多线程编程--用接口方法实现选城市旅游

package com.example.wang.myapplication;

import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;

import java.util.Random;

public class ZuoyeActivity2 extends AppCompatActivity {

    Button bt_1;
    int j = 1;
    int k = 1;
    TextView tv_1;
    TextView tv_2;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_zuoye2);

        bt_1 = (Button) findViewById(R.id.bt_1);
        tv_1 = (TextView) findViewById(R.id.tv_1);
        tv_2 = (TextView) findViewById(R.id.tv_2);

    }
    public void bt1_OnClick(View v)
    {
        j=k=1;
        new Thread(new Runnable() {
            @Override
            public void run() {
                for(int i=0;i<10;i++)
                {
                    On();
                }
            }
        }).start();

        new Thread(new Runnable() {
            @Override
            public void run() {
                for(int i=0;i<10;i++)
                {
                    On1();
                }
            }
        }).start();
    }

    public  void On()
    {
        Random random=new Random();

        runOnUiThread(new Runnable() {

            @Override
            public void run() {
                tv_1.setText("上海" + j);
                j++;
            }
        });

        try
        {
            int t=random.nextInt(1000);
            Thread.sleep(t);
        }
        catch (Exception e)
        {
            e.printStackTrace();
        }

        runOnUiThread(new Runnable() {
            @Override
            public void run() {
                tv_1.setText("");
            }
        });

        try
        {
            int t=random.nextInt(1000);
            Thread.sleep(t);
            Log.e("TAG", "t=" + t);
        }
        catch (Exception e)
        {
            e.printStackTrace();
        }
    }

    public  void On1()
    {
        Random random=new Random();

        runOnUiThread(new Runnable() {

            @Override
            public void run() {
                tv_2.setText("上海"+k);
                k++;
            }
        });

        try
        {
            int t=random.nextInt(1000);
            Thread.sleep(t);
        }
        catch (Exception e)
        {
            e.printStackTrace();
        }

        runOnUiThread(new Runnable() {
            @Override
            public void run() {
                tv_2.setText("");
            }
        });

        try
        {
            int t=random.nextInt(1000);
            Thread.sleep(t);
            Log.e("TAG", "t=" + t);
        }
        catch (Exception e)
        {
            e.printStackTrace();
        }
    }

}
java
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context="com.example.wang.myapplication.ZuoyeActivity"
    android:orientation="vertical">

    <TextView
        android:layout_width="match_parent"
        android:layout_height="40dp"
        android:background="#ccc"
        android:textSize="20sp"
        android:gravity="center"
        android:id="@+id/tv_1" />
    <TextView
        android:layout_width="match_parent"
        android:layout_height="40dp"
        android:background="#cba"
        android:textSize="20sp"
        android:gravity="center"
        android:layout_marginTop="5dp"
        android:id="@+id/tv_2"/>
    <Button
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="去哪旅游"
        android:id="@+id/bt_1"
        android:onClick="bt1_OnClick"/>

</LinearLayout>
xml

效果图如上一条博客

原文地址:https://www.cnblogs.com/wangchuanqi/p/5497375.html