使用AppCompatDialog从Dialog中删除标题

时间:2015-04-28 22:31:02

标签: android styles android-appcompat appcompatdialog

一旦我从ActionBarActivity切换到AppCompatActivity,我所做的唯一更改就是添加以下一行:

 <item name="windowNoTitle">true</item>

这是我的整个styles.xml文件:

<style name="gptheme" parent="Theme.AppCompat.Light.DarkActionBar">
    <item name="colorPrimary">@color/primary</item>
    <item name="colorPrimaryDark">@color/primaryDark</item>
    <item name="colorAccent">@color/accent</item>
    <item name="android:windowContentOverlay">@null</item>
</style>

<style name="ThemeNoActionBar" parent="gptheme">
    <item name="windowActionBar">false</item>
    <item name="windowNoTitle">true</item>
</style>

现在,我的代码中的所有新AppCompatDialog(以前都是Dialog d = new Dialog(mContext))都没有标题,即使我使用setTitle()

显然我对指定windowNoTitle的标题所做的更改,但这只会影响父活动。无论如何,我会想。

这项新功能究竟有用吗?

1 个答案:

答案 0 :(得分:0)

// style.xml

<style name="DialogActivity" parent="Theme.AppCompat.Dialog">
    <item name="android:windowNoTitle">true</item>
    <item name="colorAccent">#fff</item>
</style>

// manifest.xml

<activity
  android:name=".MyPopupActivity"
  android:theme="@style/DialogActivity"/>

//活动

import android.app.Activity;
public class MyPopupActivity extends Activity
{
  @Override
  protected void onCreate(Bundle savedInstanceState)
  {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_my_popup);
  }
}