【问题标题】:how to dynamically change textview location?如何动态更改文本视图位置?
【发布时间】:2016-02-04 11:21:57
【问题描述】:

我有一个显示搜索栏值的文本视图。我想在用户左右拉动时在擦洗器/滑块顶部显示该文本视图。 我需要什么代码才能做到这一点?

    SeekBar seekBar = (SeekBar)findViewById(R.id.seekBar);
    final TextView seekBarValue = (TextView)findViewById(R.id.seekervalue);

    seekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener(){

        @Override
        public void onProgressChanged(SeekBar seekBar, int progress,
                                      boolean fromUser) {
            // TODO Auto-generated method stub
            seekBarValue.setText(String.valueOf(progress));
        }

        @Override
        public void onStartTrackingTouch(SeekBar seekBar) {
            // TODO Auto-generated method stub
        }

        @Override
        public void onStopTrackingTouch(SeekBar seekBar) {
            // TODO Auto-generated method stub
        }
    });

【问题讨论】:

标签: java android xml seekbar


【解决方案1】:

只需在您的onProgressChanged 方法中使用TextView.setX(float X)(如果您需要垂直移动)TextView.setY(float Y)

只需根据您的需要调整值。

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        final TextView tv=(TextView)findViewById(R.id.textView);
        SeekBar sb=(SeekBar)findViewById(R.id.seekBar);
        final float startpos=tv.getX();
        sb.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
            @Override
            public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
                tv.setX(startpos+progress);
            }

            @Override
            public void onStartTrackingTouch(SeekBar seekBar) {

            }

            @Override
            public void onStopTrackingTouch(SeekBar seekBar) {

            }
        });
    }
}

【讨论】:

  • 能否请您展示如何使其相对于滑块移动?
  • 可以,但你得给我一点时间,因为我现在有点忙。
  • 当然,没问题。谢谢!
  • 好了,搞定了,我休息了一下,一分钟搞定了:),如果你有任何疑问,请告诉我。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-11-28
  • 1970-01-01
  • 2012-01-24
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多