有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java为什么我的应用程序会崩溃?抽屉

我的应用程序甚至无法启动,只是崩溃了。 我将非常感谢你的帮助。:) 我已经试过使用listView = (ListView) findViewById(R.id.drawerList);

但是抽屉里没有任何东西

主要活动。爪哇:

package com.CE.DE;


import 安卓.app.Activity;
import 安卓.os.Bundle;
import 安卓.support.v4.widget.DrawerLayout;
import 安卓.view.Menu;
import 安卓.view.MenuItem;
import 安卓.widget.ArrayAdapter;
import 安卓.widget.ListView;

public class MainActivity extends Activity {

private DrawerLayout drawerLayout;
private ListView listView;
private String[] planets;
@Override
protected void onCreate(Bundle savedInstanceState){


    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    drawerLayout=(DrawerLayout) findViewById(R.id.drawerLayout);
    planets=getResources().getStringArray(R.array.planets);

     listView.setAdapter(new ArrayAdapter<String>                         
    (this,安卓.R.layout.simple_list_item_1,planets));
    }
 }

主要活动。xml

<安卓.support.v4.widget.DrawerLayout   
xmlns:安卓="http://schemas.安卓.com/apk/res/安卓"

  安卓:id="@+id/drawerLayout"
   安卓:layout_width="match_parent"
  安卓:layout_height="match_parent">

   <FrameLayout

    安卓:id="@+id/mainContent"
    安卓:layout_width="match_parent"
    安卓:layout_height="match_parent">
    </FrameLayout>

   <ListView
    安卓:id="@+id/drawerList"
    安卓:layout_width="240dp"
    安卓:layout_height="match_parent"
    安卓:layout_gravity="left">
    </ListView>
    </安卓.support.v4.widget.DrawerLayout>

共 (2) 个答案

  1. # 1 楼答案

    试试这段代码

     package com.CE.DE;
    
    
    import android.app.Activity;
    import android.os.Bundle;
    import android.support.v4.widget.DrawerLayout;
    import android.view.Menu;
    import android.view.MenuItem;
    import android.widget.ArrayAdapter;
    import android.widget.ListView;
    
    public class MainActivity extends Activity {
    
    private DrawerLayout drawerLayout;
    private ListView listView;
    private String[] planets;
    
    @Override
    protected void onCreate(Bundle savedInstanceState){
    
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        drawerLayout=(DrawerLayout) findViewById(R.id.drawerLayout);
        planets=getResources().getStringArray(R.array.planets);
    
        listView = (ListView)findViewById(R.id.drawerList);
        listView.setAdapter(new ArrayAdapter<String>                         
        (this,android.R.layout.simple_list_item_1,planets));
        }
     }
    
  2. # 2 楼答案

    这个问题是您尚未初始化ListView

    解决方案

    创建一个新的ListView对象-

    @Override
    protected void onCreate(Bundle savedInstanceState){
    
        ....
    
        listView = (ListView)findViewById(R.id.drawerList);
        listView.setAdapter(...);
    
        }
     }