Android - 如何确保ScrollView中的已检查单选按钮在屏幕上可见?

时间:2011-11-01 22:08:41

标签: android android-layout radio-button

我在DialogPreference的ScrollView中有19个RadioButton的RadioGroup。对话框中只有前7个RadioButtons可见。一切都很好,只有一个问题。如何确保在绑定对话框后,屏幕上始终可以看到已检查的RadioButton?如何以编程方式滚动ScrollView以显示隐藏的已检查的RadioButton?

感谢您的帮助或建议。

2 个答案:

答案 0 :(得分:4)

你应该可以做这样的事情

int top = checkedRadioButton.getTop();
scrollView.scrollTo(0,top);

答案 1 :(得分:0)

这对我有用。

final Scrollview scrollview = findViewById(R.id.myScrollView);
final RadioGroup rg = findViewById(R.id.myRadioGroup);
int position = //checked position

    scrollView.post(new Runnable() {
        @Override
        public void run() {
            scrollView.scrollTo(0, rg.getChildAt(position).getTop());
        }
    });