0

Thread を作成しようとしており、Hander を使用して Toast メッセージを表示しています。

プログラムを実行すると、エミュレーターに何も表示されません!

私はスレッドにまったく新しいです。

これを解決するのを手伝ってください:)

package com.example.android_thread_hu;

import android.os.Bundle;
import android.os.Handler;
import android.app.Activity;
import android.view.Menu;
import android.widget.Toast;

public class MainActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState); 
        setContentView(R.layout.activity_main);
        thread.start();
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.main, menu);    
        return true;
    }

    Thread thread = new Thread(new Runnable() { 
        @Override
        public void run() { 
            handler.handleMessage(null) ;
       } 
    });

    public Handler handler = new Handler(){    
        public void handleMessage() {
            Toast.makeText(
                    MainActivity.this,
                    "finish!!!!",
                    Toast.LENGTH_SHORT).show();
        }
    };
}
4

2 に答える 2

1

次のようにスレッドを宣言してみてください。

Thread thread = new Thread(new Runnable() { 
    @Override
    public void run() { 
        handler.sendEmptyMessage() ;
   } 
});

また、Toast.LENGTH_SHORT短すぎず、メッセージがすぐに消えることも確認してください。

于 2013-03-06T02:51:37.320 に答える