ScrollView Focus LinearLayout 或其他元素
ScrollView Focus LinearLatout or others elements
有一个 activity 和 ScrollView 当一个项目 selected 时,你转向 View.Visible 中的另一个布局,反之亦然,但是当我 select有点向下的项目,就像状态 3 图像一样,丢失了一半信息,迫使用户不得不移动手指。
问题是:我怎样才能做到 LinearLayout requestFocus?
- 注意:我已经关闭布局,我只需要焦点。
我试过了
Google : Android ScrollView focus edittext / elements / layout / onclick focus scroll ,但不起作用。
保存最后打开的 LinearLayout 变量并在用户打开新的后关闭它。
或者显示更多代码。
编辑
使用scrollToView(View view, ScrollView scrollView),其中view是你的LinearLayout . LinearLayout 将在 ScrollView
中占用最大可能 space
public static void scrollToView(View view, ScrollView scrollView) {
scrollToView(view, scrollView, 0);
}
public static void scrollToView(final View view, final ScrollView scrollView, int count) {
if (view != null && view != scrollView) {
count += view.getTop();
scrollToView((View) view.getParent(), scrollView, count);
} else if (scrollView != null) {
final int finalCount = count;
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
scrollView.smoothScrollTo(0, finalCount);
}
}, 200);
}
}
有一个 activity 和 ScrollView 当一个项目 selected 时,你转向 View.Visible 中的另一个布局,反之亦然,但是当我 select有点向下的项目,就像状态 3 图像一样,丢失了一半信息,迫使用户不得不移动手指。
问题是:我怎样才能做到 LinearLayout requestFocus?
- 注意:我已经关闭布局,我只需要焦点。
我试过了
Google : Android ScrollView focus edittext / elements / layout / onclick focus scroll ,但不起作用。
保存最后打开的 LinearLayout 变量并在用户打开新的后关闭它。 或者显示更多代码。
编辑
使用scrollToView(View view, ScrollView scrollView),其中view是你的LinearLayout . LinearLayout 将在 ScrollView
中占用最大可能 spacepublic static void scrollToView(View view, ScrollView scrollView) {
scrollToView(view, scrollView, 0);
}
public static void scrollToView(final View view, final ScrollView scrollView, int count) {
if (view != null && view != scrollView) {
count += view.getTop();
scrollToView((View) view.getParent(), scrollView, count);
} else if (scrollView != null) {
final int finalCount = count;
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
scrollView.smoothScrollTo(0, finalCount);
}
}, 200);
}
}