【发布时间】:2014-04-20 22:12:08
【问题描述】:
我是 android 及其编程的新手。我想在 android fragment 中实现 AsyncTask,在这里我想让我的 toast 工作。(用于测试目的)请帮助我并在下面找到我使用的代码。当我试试这个我得到了以下错误
日志猫
03-15 19:52:25.666: E/AndroidRuntime(18845): FATAL EXCEPTION: AsyncTask #1
03-15 19:52:25.666: E/AndroidRuntime(18845): java.lang.RuntimeException: An error occured while executing doInBackground()
03-15 19:52:25.666: E/AndroidRuntime(18845): at android.os.AsyncTask$3.done(AsyncTask.java:299)
03-15 19:52:25.666: E/AndroidRuntime(18845): at java.util.concurrent.FutureTask$Sync.innerSetException(FutureTask.java:273)
03-15 19:52:25.666: E/AndroidRuntime(18845): at java.util.concurrent.FutureTask.setException(FutureTask.java:124)
我的代码
public class Login extends Fragment {
View view;
ImageView button,pic;
@SuppressLint("ValidFragment")
public Login() {
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
view= inflater.inflate(R.layout.login, container, false);
return view;
}
@Override
public void onActivityCreated(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onActivityCreated(savedInstanceState);
button=(ImageView) view.findViewById(R.id.login);
pic=(ImageView) view.findViewById(R.id.pic);
button.setOnClickListener(btnClick);
}
ImageView.OnClickListener btnClick=new ImageView.OnClickListener()
{
@SuppressWarnings("deprecation")
@Override
public void onClick(View v) {
// my code begins here
if(fb.isSessionValid())
{
new MyAsyncTask().execute("");
}
else
{
}
}
};
class MyAsyncTask extends AsyncTask<String, String, String>
{
@Override
protected String doInBackground(String... params) {
Toast.makeText(getActivity(),"session valid" , Toast.LENGTH_LONG).show();
return null;
}
}
}
【问题讨论】:
标签: android android-fragments android-asynctask