我試圖開發的Android定製的秒錶應用,但它拋出以下異常:定製的秒錶應用軟件Android
android.view.ViewRoot $ CalledFromWrongThreadException:只有創建視圖層次原來的線程可以觸摸其觀點。
我也嘗試過使用計時器,但是當我們使用它的停止方法時,它會從其先前的值開始。
以下是我的活動文件
public class MainActivity extends Activity implements OnClickListener
{
TextView sec,milisec,min;
Button start,stop,pause,resume;
int count=0;
Chronometer chrono;
Timer timer;
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
chrono=(Chronometer)findViewById(R.id.chronometer);
milisec=(TextView)findViewById(R.id.milisec);
sec=(TextView)findViewById(R.id.sec);
min=(TextView)findViewById(R.id.min);
start=(Button)findViewById(R.id.start);
stop=(Button)findViewById(R.id.stop);
pause=(Button)findViewById(R.id.pause);
resume=(Button)findViewById(R.id.resume);
System.out.println("-------1-------");
start.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View v)
{
//chrono.start();
//count=Integer.parseInt(count_view.getText().toString());*/
timer = new Timer();
timer.schedule(new TimerTask()
{
public void run()
{
System.out.println("-------2-------");
View v = new View(getApplicationContext());
count_increment(v);
}
},1000,10000);
}
});
stop.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View v)
{
//chrono.clearComposingText();
//chrono.setText("00");
timer.cancel();
}
});
}
public void count_increment(View v)
{
count++;
System.out.println("count="+count);
//count_str=String.valueOf(count);
milisec.setText(""+count);
}
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
}
}
和下面是XML文件
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:layout_marginTop="30dp"
android:gravity="center_horizontal" >
<TextView
android:id="@+id/min"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="00" />
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text=":" />
<TextView
android:id="@+id/sec"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="00" />
<TextView
android:id="@+id/textView4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text=":" />
<TextView
android:id="@+id/milisec"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="00" />
</LinearLayout>
<LinearLayout
android:id="@+id/linearLayout1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:layout_marginTop="60dp"
android:gravity="center_horizontal" >
<TableLayout
android:layout_width="wrap_content"
android:layout_height="match_parent" >
<TableRow
android:id="@+id/tableRow1"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<Button
android:id="@+id/start"
android:layout_width="80dp"
android:layout_height="wrap_content"
android:text="Start" />
<Button
android:id="@+id/stop"
android:layout_width="80dp"
android:layout_height="wrap_content"
android:text="Stop" />
<Button
android:id="@+id/pause"
android:layout_width="80dp"
android:layout_height="wrap_content"
android:text="Pause" />
<Button
android:id="@+id/resume"
android:layout_width="80dp"
android:layout_height="wrap_content"
android:text="Resume" />
</TableRow>
<TableRow
android:id="@+id/tableRow1"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<Chronometer
android:id="@+id/chronometer"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Chronometer" />
</TableRow>
</TableLayout>
</LinearLayout>
</RelativeLayout>
到底哪裏出問題了?
是否有任何其他的方式比這個發展秒錶?
早晨很好試試這個......有一個愉快的一天... N如何[Rü –
凱BOL吶......凱..? –
鈦天生nalayak aahe ... AATA nalayak帕納dakhavte aahe evdhech ... –