当我按下它时,我有一个按钮,我开始一个新的活动myActivity
。myActivity
我想要预览从中检索到的一些数据的布局myDataBase
,但是当我更改TextView
程序崩溃的文本时,这是我的代码。
public class myActivity extends Activity {
TextView tv1;
myDataBase DB;
String s;
String reqName
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.information);
tv1 = (TextView)findViewById(R.id.testtest);
Bundle bundle = getIntent().getExtras();
reqName = bundle.getString("someKey");
DB = new myDataBase(this);
new GetSomeData().execute(reqName);
}
public class GetSomeData extends AsyncTask<String,Integer ,String>
{
@Override
protected String doInBackground(String... arg0) {
// TODO Auto-generated method stub
try
{
String name = reqName;
DB.open();
s = DB.getData(name);
DB.close();
}
catch(Exception e)
{
e.printStackTrace();
}
tv1.setText(s); // this line makes the program crash
return s;
}
}}
我认为程序崩溃是因为跨线程(我不确定!),我该如何解决这个问题?预览数据库中的数据有更好的主意吗?