2015-02-08 87 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