2

我的 ListActivity 由很多行组成,每件事都运行良好,当第一次运行 App 时,它会在显示 listactivity 屏幕之前显示黑屏(1 秒),在左上角的这个黑屏中,它出现了我们的应用程序的标题名称在开始创建新的 Eclipse 项目时设置它,如下图所示:

在此处输入图像描述

如果您对如何删除有任何建议,请:

在显示列表活动屏幕及其标题之前出现(1 秒)的黑屏。

我知道这个标题也是应用程序的名称,它出现在我想要的设备的应用程序图标中

删除带有标题的黑屏

因此,当午餐应用程序时,它直接显示 listactivity 屏幕,如下所示:

在此处输入图像描述

列表活动代码:

 public class Menu extends ListActivity {

  String classes[] = { "First Item", "Second Item", "Third Item", "Fourth
      Item", "Fifth Item"};

  @Override
 protected void onCreate(Bundle savedInstanceState) {
 // TODO Auto-generated method stub
   super.onCreate(savedInstanceState);

 requestWindowFeature(Window.FEATURE_NO_TITLE);
   getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, 
    WindowManager.LayoutParams.FLAG_FULLSCREEN);
    ListView lv = getListView();   
    lv.setCacheColorHint(0);  
    lv.setBackgroundResource(R.drawable.fall);
 setListAdapter(new ArrayAdapter<String>(Menu.this,
    android.R.layout.simple_list_item_1, classes));

                   }
  @Override
   protected void onListItemClick(ListView l, View v, int position, long id) {
     // TODO Auto-generated method stub

     super.onListItemClick(l, v, position, id);
     String cheese = classes[position];

   try {
   Class ourClass = Class.forName("com.test.demo.MyItem");
   Intent ourIntent = new Intent(Menu.this, ourClass);
   ourIntent.putExtra("cheese", cheese);
   startActivity(ourIntent);
        } catch (ClassNotFoundException e) {
    e.printStackTrace(); }}}

提前致谢 。

更新 :

将全屏应用到清单中的菜单活动将解决这个问题:

 android:theme="@android:style/Theme.NoTitleBar.Fullscreen">

但我已经将自定义主题分配给清单中的菜单活动,如下所示:

 android:theme="@style/Theme_menu"

那么如何将上述两个主题同时分配给菜单活动。

4

1 回答 1

1

如果我正确理解您的问题,您似乎只需要让您Theme_menuTheme.NoTitleBar.Fullscreen. 为此,请通过添加一个parent属性来修改您的样式 XML:

<style
    name="Theme_menu"
    parent="@android:style/Theme.NoTitleBar.Fullscreen">

    <!-- your style modifications for Theme_menu here -->

</style>

通过上述更改,您最希望在 Activity 的方法中不需要这些行onCreate()(因为它是由主题设置的):

    requestWindowFeature(Window.FEATURE_NO_TITLE);
    getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
于 2012-10-02T19:25:47.500 回答