【问题标题】:How Do I Search The Same Word In Different TextViews?如何在不同的 TextView 中搜索相同的单词?
【发布时间】:2018-02-26 04:05:48
【问题描述】:
我在滚动视图的线性布局中有大约 50 个不同的文本视图
是这样的
1.这是第一个文本视图
2.这是第二个文本视图
3.这是第三个文本视图
4.这是第四个文本视图
5.这是第五个文本视图
6.这是第六个文本视图
7.这是第七个文本视图
8.这是第八个文本视图
9.这是第九个文本视图
10.这是第十个textview
我有一个用于搜索的编辑文本和按钮,我想要的是当我在编辑文本中输入一个数字说 6 并单击按钮然后它应该显示或转到 6。这是第六个文本视图,我也不想要其他textviews 消失,我只是想让相机移动到 textview 6 号。
请帮忙!!
【问题讨论】:
标签:
android
search
textview
full-text-search
【解决方案1】:
public static void scrollToView(final ScrollView scrollView, final View view) {
view.requestFocus();
final Rect scrollBounds = new Rect();
scrollView.getHitRect(scrollBounds);
if (!view.getLocalVisibleRect(scrollBounds)) {
new Handler().post(new Runnable() {
@Override
public void run() {
scrollView.smoothScrollTo(0, view.getBottom());
}
});
}
}
Button clickButton = (Button) findViewById(R.id.yout_button_id);
clickButton.setOnClickListener( new OnClickListener() {
@Override
public void onClick(View v) {
String n = ((EditText) findViewById(R.id.your_edittext_id)).getText();
int tn = Integer.parseInt(n); //TODO: check the view exists
TextView tv = (TextView)((LinearLayout)findViewById(R.id.your_linearlayout_id)).getChildAt(tn);
scrollToView((ScrollView)findViewById(R.id.yout_scrollview_id, tv);
}
});