android maxlines无效:max = "100"

求助:android开发中 如何设置、更新ListView中的ProgressBar的进度???-求助啊,更新ListView中的ProgressBar... _女装评价网
《求助:android开发中 如何设置、更新ListView中的ProgressBar的进度???》
出处:nvzhuang.ping-jia.net &&更新日期:今天看啥 热点:
想要用Unity实现一个二维码扫描的功能,然后网上找插件,找到一个貌似叫EasyCodeScanner,但下载下来用用,真不好使,一导入运行就报错,调好错了再运行发现点按钮没反应,反复试了几遍发现还是没反应,没办法看源码,结果发现只实现了IOS部分,没有Android部分,我屮艸芔茻...,神伤!用IOS真机测试吧,还是有问题,果断放弃了,下定决心自己动手丰衣足食,虽然不了解Android,但没有学不起来的,只要想,就没有实现不了的!!!首先还是得学习一下Android和Unity的简单交互,在这儿写个详细点的教程!供初学者学习,当然网上也有这方面的教程,有的地方不注意的话,还是会碰到困扰的,下面是详细步骤!更多教程敬请关注我的微博!
效果:这里展示的Unity调用Android原生的方法实现点击Unity界面中的按钮,然后实现手机的震动!
关于最基本的交互,可以参考这篇文章,Unity与Android基本交互,然后在这基础之上来做实现手机震动,其实也差不多!可能重复了,当自我巩固吧,呵呵!
测试方法:必须要真机测试!!!
实现步骤:
一、创建Android工程
1.创建工程
2.导入Unity相关jar
Jar目录:unity的安装路径\Editor\Data\PlaybackEngines\androidplayer\bin下的classes.jar
3.打开MainActivity.java,导入各种包,编写自己的函数
package com.example.
import android.os.B
import com.unity3d.player.UnityPlayerA
import android.app.S
import android.os.V
//震动的包
public class MainActivity extends UnityPlayerActivity {
private Vibrator mVibrator01;//声明一个振动器对象
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//震动函数
public void ClickShake()
mVibrator01 = (Vibrator)getApplication().getSystemService(Service.VIBRATOR_SERVICE);
mVibrator01.vibrate(new long[]{100,10,100,1000},-1);//自定义整栋模式,只震动一次
//判断大小
public int Max(int a,int b)
添加unityActivity,使MainActivity继承UnityPlayerActivity,并把SetContentView函数删掉(不然到手机上启动程序的时候就会只看到一句HelloWorld),这里有两个自己自定义的函数主要的就是上面的没有参数的调用振动器的自定义函数,还有个就是有返回值有参数的比较大小的函数,这里用两个不同的函数在Unity中调用做对比!
4.修改XML并且添加震动权限
添加允许震动的权限,选择AndroidManifest.xml,然后点击Permissions-&Add UserPermission-&android.perssion.VIBRATE。
5.导出jar包
在项目根目录上右击-&Export
点击Finish结束!
二、创建Unity工程
1.在Assets下创建Plugins/Android文件夹,这个文件夹是特殊文件夹,专门用与存放Android的包文件,以便调用Android接口
将文件的xml,jar,res,libs文件放在Android文件下
2.写Unity调用Android代码
using UnityE
using System.C
public class NewBehaviourScript : MonoBehaviour {
private AndroidJavaO
private int res = 0;
// Use this for initialization
void Start () {
AndroidJavaClass jc=new AndroidJavaClass(&com.unity3d.player.UnityPlayer&);
activity = jc.GetStatic&AndroidJavaObject&(&currentActivity&);
res = activity.Call&int&(&Max&, new object[] { 10, 20 });
void OnGUI()
GUI.Label(new Rect(20, 20, 300, 20), &调用的Android方法:求出10和20中比较大的数字是&+res.ToString());
GUI.Label(new Rect(20, 70, 300, 20), &http://blog.csdn.net/dingxiaowei2013&);
if ( GUI.Button(new Rect(Screen.width / 2 - 20, Screen.height / 2 + 20, 100, 40), &点击震动&))
activity.Call(&ClickShake&);
说明AndroidJavaObject是一个java对象,这里获取的是java视图,然后调用自定义方法。
(注:初步了解这里的参数之所以填”com.unity3d.player.UnityPlayer”和”currentActivity”,是因为在生成jar文件的时候,已经指定了MainActivityclass继承UnityPlayerActivity,也在XML指定了MainActivity是Main class)
activity.Call&int&(&&,&&);这个调用的是有返回值的方法,int是返回类型,activity.Call(&&);调用的是没返回值没参数的方法
3.导出设置(Importent)
4.真机测试
我就不上传截图了,大概就是一个按钮,能够点击使手机震动,还有一个label,显示10和20比较的结果值。
更多教程欢迎关注&微博
相关搜索:
相关阅读:
相关频道:
Android教程最近更新2017夏令热线&区长一诺&之松江区代区长陈宇剑_新浪视频
2017夏令热线&区长一诺&之松江区代区长陈宇剑
按住此条可拖动
新闻 - 热门视频
正在加载...请稍等~
分享视频地址:
本页面地址:
播放器swf地址:
html地址:
扫描二维码下载新浪视频App进度条(ProgressBar) - 低级写手 我自由了 - ITeye博客
博客分类:
&&& 当一个应用在后台执行时,前台界面就不会有什么信息,这时用户根本不知道程序是否在执行、执行进度如何、应用程序是否遇到错误终止等,这时需要使用进度条来提示用户后台程序执行的进度。Android系统提供了两大类进度条样式,长形进度条(progress-BarStyleHorizontal)
和圆形进度条(progressBarStyleLarge)。进度条用处很多,比如,应用程序装载资源和网络连接时,可以提示用户稍等,这一类进度条只是代表应用程序中某一部分的执行情况,而整个应用程序执行情况呢,则可以通过应用程序标题栏来显示一个进度条,这就需要先对窗口的显示风格进行设置"requestWindowFeature(Window.FEATURE_PROGRESS)"。
&& 我们看看这个示例程序的 运行效果
先上布局文件
&?xml version="1.0" encoding="utf-8"?&
&LinearLayout xmlns:android="/apk/res/android"
&&& android:orientation="vertical"
&&& android:layout_width="fill_parent"
&&& android:layout_height="fill_parent"
&&& &
&TextView&
&&& android:layout_width="fill_parent"
&&& android:layout_height="wrap_content"
&&& android:text="@string/hello"
&&& /&
&ProgressBar
android:id="@+id/ProgressBar01"
style="?android:attr/progressBarStyleHorizontal"
android:layout_width="200dp"
android:layout_height="wrap_content"
android:visibility="gone"
&ProgressBar
android:id="@+id/ProgressBar02"
style="?android:attr/progressBarStyleLarge"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:max="100"
android:progress="50"
android:secondaryProgress="70"
android:visibility="gone"
android:id="@+id/Button01"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="开始"/&
&/LinearLayout&
ProgressBar01 为长形进度条,Progress02为圆形进度条,标题栏进度条没有在这里声明。"style="表示设置进度条的风格。下面通过setMax方法设置进度条的最大值,setProgress 方法设置进度条的当前值,setVisibility 方法设置进度条的可见性。
package xiaohang.
import android.app.A
import android.os.B
import android.os.H
import android.os.M
import android.view.V
import android.view.W
import android.widget.B
import android.widget.ProgressB
public class Activity01 extends Activity {
//声明ProgressBar对象
private ProgressBar xh_ProgressB
private ProgressBar xh_ProgressBar2;
private Button xh_B
protected static final int GUI_STOP_NOTIFIER = 0x108;
protected static final int GUI_THREADING_NOTIFIER = 0x109;
public int intCounter = 0;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//设置窗口模式,因为需要显示进度条在标题栏
requestWindowFeature(Window.FEATURE_PROGRESS);
setProgressBarVisibility(true);
setContentView(R.layout.main);
//得到ProgressBar
xh_ProgressBar = (ProgressBar) findViewById(R.id.ProgressBar01);
xh_ProgressBar2 = (ProgressBar) findViewById(R.id.ProgressBar02);
xh_Button = (Button) findViewById(R.id.Button01);
//设置进度条 不为 不确定模式
xh_ProgressBar.setIndeterminate(false);
xh_ProgressBar2.setIndeterminate(false);
//当按钮按下时开始执行
xh_Button.setOnClickListener(new Button.OnClickListener() {
public void onClick(View v) {
//设置ProgressBar为可见状态
xh_ProgressBar.setVisibility(View.VISIBLE);
xh_ProgressBar2.setVisibility(View.VISIBLE);
//设置ProgressBar的最大值
xh_ProgressBar.setMax(100);
//设置ProgressBar当前值
xh_ProgressBar.setProgress(0);
xh_ProgressBar2.setProgress(0);
//通过线程来改变ProgressBar的值
new Thread(new Runnable() {
public void run() {
for (int i = 0; i & 10; i++) {
//设置进度值
intCounter = (i + 1) * 20;
//睡眠1000毫秒
Thread.sleep(1000);
if (i == 4) {
Message m = new Message();
m.what = Activity01.GUI_STOP_NOTIFIER;
Activity01.this.myMessageHandler
.sendMessage(m);
Message m = new Message();
m.what = Activity01.GUI_THREADING_NOTIFIER;
Activity01.this.myMessageHandler
.sendMessage(m);
} catch (Exception e) {
e.printStackTrace();
}).start();
Handler myMessageHandler = new Handler() {
public void handleMessage(Message msg) {
switch (msg.what) {
//ProgressBar已经是最大值
case Activity01.GUI_STOP_NOTIFIER:
xh_ProgressBar.setVisibility(View.GONE);
xh_ProgressBar2.setVisibility(View.GONE);
Thread.currentThread().interrupted();
case Activity01.GUI_THREADING_NOTIFIER:
if (!Thread.currentThread().isInterrupted()) {
//改变ProgressBar的当前值
xh_ProgressBar.setProgress(intCounter);
xh_ProgressBar2.setProgress(intCounter);
//设置标题栏中前景的一个进度条进度值
setProgress(intCounter * 100);
super.handleMessage(msg);
android 2.0& APILEVEL 5
源码图片 见附件
下载次数: 487
浏览 26519
浏览: 1435223 次
来自: 北京
[color=red][/color]
[flash=200,200][flash=200,200][ ...
写的还不错,不过不是我需要的。
牛逼,太齐全了,收藏

我要回帖

更多关于 android maxlength 的文章

 

随机推荐