我正在构建一个应用程序,我已在webview上加载了该网页。我有一个包含edittext的布局。我希望在用户在webview中向下滚动时隐藏布局,并在用户滚动到顶部时再次显示布局。我尝试过使用onTouch
,但只需MotionEvent.ACTION_MOVE
即可。这是我的代码的样子:
@Override
public boolean onTouch(View v, MotionEvent event) {
if (v.getId() == R.id.web
&& event.getAction() == MotionEvent.ACTION_MOVE) {
handler.sendEmptyMessageDelayed(CLICK_ON_URL, 2000);
}
return false;
}
@Override
public boolean handleMessage(Message msg) {
if (msg.what == CLICK_ON_URL) {
top.setVisibility(LinearLayout.GONE);
return true;
}
return false;
}
正如您在此处所见,我正在使用top.setVisibility(LinearLayout.GONE);
,但这并不能解决我的问题,它完全隐藏了我的布局。
知道如何克服这个问题。
答案 0 :(得分:2)
您可以将您的布局和webView包装在scrollView中。因此,当用户向下滚动时,父级将捕获滚动事件。供参考,
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@drawable/bg_main" >
<!-- Both your views goes here -->
</ScrollView>
希望有所帮助。