80,349
社区成员
发帖
与我相关
我的任务
分享
public class MainActivity extends Activity {
ProgressBar bar = null;
Button myButton = null;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
bar = (ProgressBar)findViewById(R.id.bar);
myButton = (Button)findViewById(R.id.myButton);
myButton.setOnClickListener(new ButtonListener());
}
class ButtonListener implements OnClickListener {
@Override
public void onClick(View arg0) {
bar.setVisibility(View.VISIBLE);
new Thread(updateThread){}.start();
}
}
Handler barHandler = new Handler() {
public void handleMessage(android.os.Message msg) {
bar.setProgress(msg.arg1);
}
};
Runnable updateThread = new Runnable(){
public void run(){
System.out.println("Begin Thread");
for (int i = 0; i <= 100; i += 10) {
try{
Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
Message msg = barHandler.obtainMessage();
msg.arg1 = i;
barHandler.sendMessage(msg);
}
}
};
}
public class MainActivity extends Activity {
ProgressBar bar = null;
Button myButton = null;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
bar = (ProgressBar)findViewById(R.id.bar);
myButton = (Button)findViewById(R.id.myButton);
myButton.setOnClickListener(new ButtonListener());
}
class ButtonListener implements OnClickListener {
@Override
public void onClick(View arg0) {
bar.setVisibility(View.VISIBLE);
new Thread(updateThread){}.start();
}
}
Handler barHandler = new Handler() {
public void handleMessage(android.os.Message msg) {
bar.setProgress(msg.arg1);
new Thread(updateThread){}.start();
}
};
Runnable updateThread = new Runnable(){
int i = 0;
public void run(){
if (i < 100) {
i += 10;
System.out.println("Begin Thread");
try{
Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
Message msg = barHandler.obtainMessage();
msg.arg1 = i;
barHandler.sendMessage(msg);
}
}
};
}
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity" >
<Button
android:id="@+id/myButton"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="start"/>
<ProgressBar
android:id="@+id/bar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
style="?android:attr/progressBarStyleHorizontal"
android:visibility="gone"/>
</LinearLayout>