我的父母Linearlayout1
包含两个子框架布局:FrameLayout1
和FrameLayout2
.
位于FrameLayout1
顶部FrameLayout2
但仅覆盖 的一半FrameLayout2
。
我替换FrameLayout1
为 some fragment1
,也替换FrameLayout2
为 some fragment2
。
现在,当我单击 时FrameLayout2
,FrameLayout1
应该会变得不可见。但这并没有发生。
我尝试了以下方法:
userDetails.java
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
view = inflater.inflate(R.layout.userDetails, container, false);
topLayout = (LinearLayout) getActivity().findViewById(R.id.FrameLayout1);
bottomLayout = (LinearLayout) getActivity().findViewById(R.id.FrameLayout2);
view.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v)
{
topLayout.setVisibility(View.GONE);
}
});
}
我还发现 onClick 的视图监听器在点击时没有被调用。
更新:
活动主.xml:
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:id="@+id/FrameLayout1"
android:layout_weight="1"
android:layout_width="0dp"
android:layout_height="match_parent" />
<LinearLayout
android:id="@+id/FrameLayout2"
android:layout_weight="2"
android:layout_width="0dp"
android:layout_height="match_parent" />
</FrameLayout>