2015-02-08 88 views
1

应用程序崩溃和logcat输出是nullpointerException。相同的代码在以前的应用程序之前工作,但不在这个应用程在输出误差是gridview适配器空指针异常

“无法启动actvity componentinfo”

使用断点我已经达到getView()

主要活动

protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    System.out.println("main activity1"); 
    setContentView(R.layout.maingrid); 
    System.out.println("main activity2"); 
    gridView.setAdapter(new GridAdapter(this,ITEM_LIST)); 

    gridView.setOnItemClickListener(new GridClick()); 

} 

网格视图之前发现应用程序崩溃适配器类

public class GridAdapter extends BaseAdapter 
    { 
    private Context context; 
    private final String[] itemName; 

    public GridAdapter(Context context, String[] itemName) { 
    System.out.println("gridadaptor"); 
    this.context = context; 
    this.itemName = itemName; 
    System.out.println("gridadaptor finish"); 
} 


public int getCount() { 
    System.out.println("getcount"); 
    return itemName.length; 
} 


public Object getItem(int position) { 

    return null; 
} 



public long getItemId(int position) { 

    return 0; 
} 


public View getView(int position, View convertView, ViewGroup parent) { 
    System.out.println("getview1"); 
    LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
    View gridView = null; 
    System.out.println("getview"); 
    if (convertView==null) 
      { 
       gridView = new View(context); 
       gridView = inflater.inflate(R.layout.griditem, null); 

       TextView textView = (TextView) gridView.findViewById(R.id.grid_label); 
       textView.setText(itemName[position]); 

       ImageView imageView = (ImageView) gridView.findViewById(R.id.grid_image); 
       String item = itemName[position]; 

      if (item.equalsIgnoreCase("Stock Manager")) 
      { 
       imageView.setImageResource(R.drawable.stock); 
      } 

      else if (item.equalsIgnoreCase("Sales Report")) 
      { 
       imageView.setImageResource(R.drawable.sales); 
      } 

      else if (item.equalsIgnoreCase("Purchase Report")) 
      { 
       imageView.setImageResource(R.drawable.purchase); 
      } 

      else if (item.equalsIgnoreCase("Collateral Report"))  
      { 
       imageView.setImageResource(R.drawable.collateral); 
      } 

      } 
      else 
      { 
       gridView = (View) convertView; 

      } 

      return gridView; 


} 

}

+0

后堆栈跟踪请。 – stkent 2015-02-08 03:41:58

+0

在清单中注册您的活动,也请向我们展示main_activity – 2015-02-08 03:56:45

回答

0

你忘了你的实例化网格视图:

gridView = findViewById(R.id.gridveiew); 
+0

谢谢。 Jared Burrows – user3856376 2015-02-08 05:39:01