如何搜索栏值返回previous活动? [英] How to return SeekBar value to previous activity?

查看:232
本文介绍了如何搜索栏值返回previous活动?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何从活动B 返回搜索栏活动A

 搜索栏=(搜索栏)findViewById(R.id.seekBarPercentage);save.setOnClickListener(新View.OnClickListener()//返回previous活动{
    @覆盖
    公共无效的onClick(视图v){
        意图returnIntent =新的Intent();
        项目= project.getSelectedItem()的toString()。 //微调值
        描述= description.getText()的toString(); // EDITTEXT值
        //搜索栏的价值?
        returnIntent.putExtra(项目,项目);
        returnIntent.putExtra(说明,说明);
        的setResult(Activity.RESULT_OK,returnIntent);
    }
});seekBar.setOnSeekBarChangeListener(新SeekBar.OnSeekBarChangeListener(){
    INT进度= 0;    @覆盖
        公共无效onProgressChanged(搜索栏搜索栏,INT progresValue,布尔FROMUSER){
            进度= progresValue;
            // Toast.makeText(getApplicationContext(),改变搜索栏的进步,Toast.LENGTH_SHORT).show();
        }
        @覆盖
        公共无效onStartTrackingTouch(搜索栏搜索栏){
            // Toast.makeText(getApplicationContext(),启动跟踪搜索栏,Toast.LENGTH_SHORT).show();
        }        @覆盖
        公共无效onStopTrackingTouch(搜索栏搜索栏){
            progressText.setText(涵盖:+进度+/+ seekBar.getMax());
            // Toast.makeText(getApplicationContext(),停止跟踪搜索栏,Toast.LENGTH_SHORT).show();
        }
    });}


解决方案

  1. 保留 INT进步 OnSeekBarChangeListener

  2. 提取当前进度为进度= seekBar.getProgress()

  3. returnIntent.putExtra(说明,说明)类似; ,把进步意图作为一个额外的。

How to return seekBar value from Activity B to Activity A ?

seekBar=(SeekBar)findViewById(R.id.seekBarPercentage);

save.setOnClickListener(new View.OnClickListener()  //return to previous activity {
    @Override
    public void onClick(View v) {
        Intent returnIntent=new Intent();
        Project=project.getSelectedItem().toString(); //spinner value
        Description=description.getText().toString(); //editText value
        // seekBar value ?
        returnIntent.putExtra("Project",Project);
        returnIntent.putExtra("Description",Description);
        setResult(Activity.RESULT_OK,returnIntent);
    }
});

seekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
    int progress = 0;

    @Override
        public void onProgressChanged(SeekBar seekBar, int progresValue, boolean fromUser) {
            progress = progresValue;
            // Toast.makeText(getApplicationContext(), "Changing seekbar's progress", Toast.LENGTH_SHORT).show();
        }
        @Override
        public void onStartTrackingTouch(SeekBar seekBar) {
            //  Toast.makeText(getApplicationContext(), "Started tracking seekbar", Toast.LENGTH_SHORT).show();
        }

        @Override
        public void onStopTrackingTouch(SeekBar seekBar) {
            progressText.setText("Covered: " + progress + "/" + seekBar.getMax());
            // Toast.makeText(getApplicationContext(), "Stopped tracking seekbar", Toast.LENGTH_SHORT).show();
        }
    });

}

解决方案

  1. Keep the int progress outside the OnSeekBarChangeListener.
  2. Retrieve current progress as progress = seekBar.getProgress().
  3. Similar to returnIntent.putExtra("Description",Description);, put the progress in the Intent as an extra.

这篇关于如何搜索栏值返回previous活动?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆