こんにちは、単一のレイアウトで 2 つのフラグメントを作成しました。
レイアウトランドで:
フラグメントは水平に表示する必要があります。
layout-port : フラグメントは垂直に表示する必要があります。
ここで、縦向きモードでアプリを実行する必要があります。これは、フラグメントを縦に表示することを意味します。今、これらを横向きモードに回転させる必要があります。つまり、フラグメントを縦方向にのみ表示することを意味します。
同時に、アプリをランドスケープ モードで実行する必要があります。これは、フラグメントを水平に表示することを意味します。今度は、これらをポートレート モードに回転させる必要があります。これは、フラグメントを水平に表示することを意味します。
しかし、次のような出力を表示したい:
縦向きモードでアプリを実行する必要があるのは、フラグメントを縦向きに表示することを意味します。今、これらを横向きモードに回転させる必要があります。これは、フラグメントを水平に表示することを意味します。
同時に、アプリをランドスケープ モードで実行する必要があります。これは、フラグメントを水平に表示することを意味します。今度は、これらをポートレート モードに回転させる必要があります。これは、フラグメントを垂直に表示することを意味します。
どのようにできるのか ???
上記のような結果が得られるのはなぜですか。何か提案があれば教えてください。
編集:
レイアウトランド: fragment.xml:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:id="@+id/_listDetails"
>
<ImageView
android:id="@+id/refresh"
android:layout_width="wrap_content"
android:layout_height="45dp"
android:layout_gravity="center_vertical"
android:layout_toLeftOf="@+id/pos"
android:src="@drawable/ref_off" />
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_below="@+id/layout"
android:background="#414042"
android:orientation="horizontal" >
<fragment
android:id="@+id/activity_main"
android:name="com.notch.notchbolly.MainActivity"
android:layout_width="0px"
android:layout_height="match_parent"
android:layout_weight="0.83"
/>
<View
android:layout_width="2dp"
android:layout_height="fill_parent"
android:background="#FFFFFF"
/>
<fragment
android:id="@+id/subcate"
android:name="com.notch.notchbolly.SubCate"
android:layout_width="0px"
android:layout_height="match_parent"
android:layout_weight="1" />
</LinearLayout>
</RelativeLayout>
レイアウト ポート: fragment.xml:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:id="@+id/_listDetails"
>
<ImageView
android:id="@+id/refresh"
android:layout_width="wrap_content"
android:layout_height="45dp"
android:layout_gravity="center_vertical"
android:layout_toLeftOf="@+id/pos"
android:src="@drawable/ref_off" />
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_below="@+id/layout"
android:background="#414042"
android:id="@+id/orien"
android:orientation="vertical"
>
<fragment
android:id="@+id/activity_main"
android:name="com.notch.notchbolly.MainActivity"
android:layout_width="fill_parent"
android:layout_height="200dp"
/>
<View
android:layout_width="fill_parent"
android:layout_height="3dp"
android:background="#FF0000"
/>
<fragment
android:id="@+id/subcate"
android:name="com.notch.notchbolly.SubCate"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
/>
</LinearLayout>
</RelativeLayout>
これは私の AndroidListFragmentActivity です:
public class AndroidListFragmentActivity extends FragmentActivity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.fragment);
ImageView refresh = (ImageView) findViewById(R.id.refresh);
refresh.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
Intent in = new Intent(AndroidListFragmentActivity.this, AndroidListFragmentActivity.class);
startActivity(in);
}
});
}
@Override
public void onConfigurationChanged ( Configuration newConfig )
{
super.onConfigurationChanged(newConfig);
}
}