Textview值因空指针异常而崩溃
下面是我正在使用的代码。代码中是否有任何问题。

 public class MainActivity extends Activity {
 Button btn;
 int i =0;
 SharedPreferences.Editor preferences;
 TextView txt;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    btn = (Button)findViewById(R.id.button1);
    preferences = PreferenceManager.getDefaultSharedPreferences(MainActivity.this).edit();
    txt = (TextView) findViewById(R.id.textView1);
    btn.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {

             new LongOperation().execute("");
        }
    });

}

    private class LongOperation extends AsyncTask<String, Void, String> {

        @Override
        protected String doInBackground(String... params) {
            for (int i = 0; i < 5; i++) {
                try {
                    Thread.sleep(1000);
                } catch (InterruptedException e) {
                    Thread.interrupted();
                }
            }
            return "Executed";
        }

        @Override
        protected void onPostExecute(String result) {

            txt.setText("Executed -----------------------    ");
        }

        @Override
        protected void onPreExecute() {}

        @Override
        protected void onProgressUpdate(Void... values) {}
    }


}

进入onPostExecute之后,textview值未设置该值。
请帮我。提前致谢。

最佳答案

未设置Textview值,因为id的值可能为null。核实。

关于java - 在onPostExecute的AsyncTask中,未设置textview值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/38526010/

10-11 16:25