我有问题我想在onCreate期间隐藏listVeiw,但问题是当我将listview隐藏为不可见时,setOnTouchListener将无效。但如果我在setOnTouchListener之前删除lstv.setVisibility(View.INVISIBLE);
,则setOnTouchListener为工作,但我需要在启动或onCreate期间首先隐藏我的列表视图。
提前谢谢。
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
lstv.setVisibility(View.INVISIBLE);
vdo.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View view, MotionEvent motionEvent) {
lstv.setVisibility(View.VISIBLE);
lstv.postDelayed(new Runnable() {
@Override
public void run() {
lstv.setVisibility(View.INVISIBLE);
}
}, 3000);
return true;
}
});
}
activity_main.xml中
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="#000000"
tools:context=".MainActivity" >
<VideoView
android:id="@+id/vdo"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
/>
<ListView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/listview"
android:layout_width="229dp"
android:layout_height="fill_parent"
android:smoothScrollbar="true"
android:soundEffectsEnabled="true"
/>
</FrameLayout >
答案 0 :(得分:1)
隐藏ListView并在vdo
上接收onTouchEvent
你应该改变
lstv.setVisibility(View.INVISIBLE);
到
lstv.setVisibility(View.GONE);
希望这个帮助
答案 1 :(得分:1)
您可以在布局(xml)中隐藏列表视图。喜欢这个
<ListView
....
....
android:visibility="gone"
/>