2017-01-10 5 views
0

「ヌル」である:java.lang.NumberFormatException: For input string: "null" .I事のエラー行interget.parseInt("" + v.getTag());私はjava.lang.NumberFormatExceptionでエラーを得た私は、私のapp.theエラーで編集カートの項目に誤りがあり

私のコード:

case R.id.iv_edit_cart_item: 
        FragmentManager fm=getActivity().getSupportFragmentManager(); 
        Fragment fragment = new ProductDetailActivity(); 
        Bundle bundle = new Bundle(); 
        int updatePos = Integer.parseInt("" + v.getTag()); 
        bundle.putString("key","update"); 
        bundle.putString("product_id", mArrListMyCart.get(updatePos).getmStrProductId()); 
        bundle.putString("item_id", mArrListMyCart.get(updatePos).getmStrItemId()); 

        getUpdateCartItems(); 
        //showAlert("Product id-->" + mArrListMyCart.get(Integer.parseInt(""+v.getTag())).getmStrProductId(), -1); 
        fragment.setArguments(bundle); 
        fm.beginTransaction().replace(R.id.content_frame, fragment).addToBackStack("").commit(); 
        break; 

これを解決するにはどうすればよいですか?

+1

を 'int型updatePos = v.getTag()= nullを!? Integer.parseInt( "" + v.getTag()):0; ' – Laazo

+0

あなたは@Azolaを説明し、上のコードを追加する方法を教えてください。 –

+0

v.getTag()の値がnullかどうかをチェックします。空の。 –

答えて

1

数値以外のStringIntegerまたはDoubleのような任意の数値に解析しようとすると、java.lang.NumberFormatExceptionが表示されます。

たとえば、"null"integerに変換しようとすると、NumberFormatExceptionが返されます。入力文字列の場合

エラー"Exception in thread "main" java.lang.NumberFormatException::「ヌル」とは、具体的には、あなたが解析のために受け取る文字列が数値ではないことを言っています。

解析する前にv.getTag()がnullでないことを確認してください。

String input = v.getTag(); 

If(null != input) 
{ 
    int updatePos = Integer.parseInt("" + input); 
} 
-2

チェックXMLとあなたのビューのすべてがこの属性を持っていることを確認してください。アンドロイド:タグ= "someTag"

<View 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:tag="someTag"/> 
関連する問題