0

ダイアログフラグメントがあり、このフラグメントのレイアウトが膨張すると:

この画面の向きを変更すると、ダイアログが凝縮され、横向きモードに強制的に収まるように見え、適切な比率で画面に収まりません。どのようにすればよいでしょうか..... onConfigurationChange() メソッドをオーバーライドして、レイアウトを再度拡張しようとしましたが、役に立ちませんでした..... 向きの変更時にダイアログの領域を増やす方法を知る必要がありますか?

これは私のレイアウトです:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:padding="4dip"
android:background="@drawable/techdeals_tip_screen" >



<Button
    android:id="@+id/show"
    android:layout_width="50dp"
    android:layout_height="50dp"
    android:layout_weight="0"
    android:background="@android:color/transparent" 
    android:layout_gravity="right">

    <requestFocus />
</Button>

これは私のダイアログフラグメントです:

public static class MyDialogFragment extends SherlockDialogFragment {


    /**
     * Create a new instance of MyDialogFragment.
     */
    static MyDialogFragment newInstance() {
MyDialogFragment f = new MyDialogFragment();
        return f;
    }

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        // Pick a style based on the num.
        int style = DialogFragment.STYLE_NO_TITLE;
        int theme = 0;
        setStyle(style, theme);
    }

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
            Bundle savedInstanceState) {
        View v = inflater.inflate(R.layout.fragment_tips_dialog, container, false);
        Button button = (Button)v.findViewById(R.id.show);
        button.setOnClickListener(new OnClickListener() {
            public void onClick(View v) {
                dismiss();
            }
        });
        return v;
    }

    @Override
    public void onStop() {
        super.onStop();
        final Activity activity = getActivity();
        launchNextScreen(getActivity());
        activity.finish();
    }

    /** Method to launch home screen after tip screen. */
    private void launchNextScreen(Activity activity) {
        setViewedWelcomeScreen(activity);
        activity.startActivity(new Intent(activity, HomeTabActivity.class));
    }
}

どんな助けも非常に重要です。

4

1 に答える 1

0

ランドスケープ構成のレイアウトを作成する必要があると思います。そのようにして、好きな幅に設定してください。それが役立つと思います..ここにリンクがあります。読むことができます... http://android.programmerguru.com/android-landscape-layout-example /

于 2013-03-14T12:04:49.447 に答える