2

マニフェストに Android:theme="Theme.Sherlock.Dialog" として定義されたアクティビティがあります。このダイアログのアクティビティの OnCreate 関数で、requestWindowFeature(Window.FEATURE_NO_TITLE); を設定しました。ICS セットでは、これで問題なく動作します。ヘッダーのないダイアログが表示されますが、GingerBread フォンでは、ダイアログのヘッダーがまだ表示され、青い線のヘッダーとその下のコンテンツが表示されます。これが私がやっていることです

<activity
        android:name=".activity.PictureChooserDialog"
        android:configChanges="keyboardHidden|orientation"
        android:label="Set a Picture To Upload"
        android:launchMode="singleTop"
        android:theme="@style/ThemeWithCorners" />


<style name="ThemeWithCorners" parent="Theme.Sherlock.Dialog">
    <item name="android:windowBackground">@drawable/dialog_round_corners</item>
    <item name="android:windowCloseOnTouchOutside">false</item>
</style>


public class PictureChooserDialog extends SherlockActivity {

protected void onCreate(final Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    requestWindowFeature(Window.FEATURE_NO_TITLE);
    setContentView(R.layout.dialog_picture_chooser_layout);

    //The dialog content

    ((Button) findViewById(R.id.cancelDialog))
            .setOnClickListener(new OnClickListener() {
                @Override
                public void onClick(View arg0) {
                    finish();

                }
            });

}

private class CustomClickListener implements ClickListener {

    public void onClick(final int index) {
        switch (index) {
        case 0:
            break;
        case 1:
            break;
        case 2:
            break;
        case 3:
            break;
        }

    }

}
}
4

1 に答える 1

5

https://github.com/JakeWharton/ActionBarSherlock/issues/500の投稿を読んでください。android.view.Window を com.actionbarsherlock.view.Window に変更する必要がありました。その後、setWindowFeature が機能します。

于 2012-10-01T09:25:38.433 に答える