web-dev-qa-db-ja.com

Androidのスレッドの例

Androidでのスレッドの作成とスレッドの呼び出しに関する簡単な例が必要です。

72
ram

これは素晴らしいチュートリアルです:

http://Android-developers.blogspot.de/2009/05/painless-threading.html

または、UIスレッドの場合:

http://developer.Android.com/guide/faq/commontasks.html#threading

または、ここで非常に実用的なもの:

http://www.androidacademy.com/1-tutorials/43-hands-on/115-threading-with-Android-part1

そして、プロセスとスレッドについてのもう一つ

http://developer.Android.com/guide/components/processes-and-threads.html

86

Androidの強力な機能の1つは、 AsyncTask クラスです。

これを使用するには、まず拡張して、doInBackground(...)をオーバーライドする必要があります。 doInBackgroundはワーカースレッドで自動的に実行され、UIスレッドにリスナーを追加してステータスの更新に関する通知を受け取ることができます。これらの関数はonPreExecute()onPostExecute()およびonProgressUpdate()と呼ばれます。

例があります here

他の選択肢については、以下の投稿を参照してください。

ハンドラーvs AsyncTask vsスレッド

10
Endian Ogino

Androidの簡単なスレッドの例を次に示します。それは非常に基本的ですが、視点を得るのに役立つはずです。

Androidコード-Main.Java

package test12.tt;

import Android.app.Activity;
import Android.os.Bundle;
import Android.widget.TextView;

public class Test12Activity extends Activity {

    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        final TextView txt1 = (TextView) findViewById(R.id.sm);

        new Thread(new Runnable() { 
            public void run(){        
            txt1.setText("Thread!!");
            }
        }).start();

    }    
}

AndroidアプリケーションXML-main.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:Android="http://schemas.Android.com/apk/res/Android"
    Android:orientation="vertical"
    Android:layout_width="fill_parent"
    Android:layout_height="fill_parent">

    <TextView  
    Android:id = "@+id/sm"
    Android:layout_width="fill_parent" 
    Android:layout_height="wrap_content" 
    Android:text="@string/hello"/>

</LinearLayout>
7
mbejda