小编idi*_*ger的帖子

如何在android中停止此线程?

在我的应用程序中,我使用此线程在时钟上旋转秒针.但问题是当我关闭活动时,线程仍然保持运行.我想停止线程,因此它无法影响设备的Bettry.

下面是我的活动代码,我在旋转时钟的秒针:

 public class ClockActivity extends Activity implements OnClickListener{
    private Button chimeBtn;
    private ImageView img;
    private Thread myThread = null;

    @Override
    public void onCreate(Bundle savedInstanceState){
        super.onCreate(savedInstanceState);
        setContentView(R.layout.clock_layout);


        Runnable runnable = new CountDownRunner();
        myThread = new Thread(runnable);
        myThread.start();

        chimeBtn = (Button) findViewById(R.id.chimeBtn);
        chimeBtn.setOnClickListener(this);
    }
    @Override
    public void onClick(View v) {
        switch(v.getId()){
            case R.id.chimeBtn:
                playSound(R.raw.one_bell);
                break;
        }
    }
    public void playSound(int resources){

         MediaPlayer mp = MediaPlayer.create(getApplicationContext(), resources);
            mp.start();


    }

    private void doPlay(){
        new Thread(new Runnable() {

            @Override
            public void run() {
                // …
Run Code Online (Sandbox Code Playgroud)

multithreading android android-ndk runnable

1
推荐指数
1
解决办法
2万
查看次数

onOptionsItemSelected问题

我已经为我的数据库类创建了一个选项菜单.启动选项菜单后,我想点击指定按钮进行所需的活动.

但问题是,如果我点击任何选项,我会被引导到MainMenu.class.任何想法为什么会这样?

码:

    @Override
    public boolean onCreateOptionsMenu(Menu menu)
    {
        new MenuInflater(this).inflate(R.menu.optionmenu, menu);
        return(super.onCreateOptionsMenu(menu));
    }


    public boolean onOptionsItemSelected ( MenuItem item){
        switch (item.getItemId())
        {
        case R.id.item1:
        { Intent r=new Intent(Database.this,MainMenu.class);
            startActivity(r);
        }

        case R.id.takesurvey:
        { 
            Toast toast=Toast.makeText(this, "check", 2000);
               toast.show();
            Intent r1=new Intent(Database.this,SurveyActivity.class);
            startActivity(r1);
        }

        case R.id.viewstats:
        { Intent r2=new Intent(Database.this,Stats.class);
            startActivity(r2);
        }

        case R.id.changesort:
        { Intent r3=new Intent(Database.this,MainMenu.class);
            startActivity(r3);
        }

        case R.id.menuexit:
        { Intent r4=new Intent(Database.this,MainMenu.class);
            startActivity(r4);
        }
        }
        return true;
    }
Run Code Online (Sandbox Code Playgroud)

android android-intent options-menu

1
推荐指数
1
解决办法
4455
查看次数