2016-12-16 2 views
0

テーマの2 EditTextまたは1がここButton >>EditTextの内容を確認しますか?

をクリックすると、次のアクティビティにnull値を渡すためをクラッシュからアプリを防ぐためにEMPTYあるとき、私はトーストを表示しようとしました私の方法(ボタンのメソッド)です。

public void mods(View view) { 

    dNewBuy = Double.parseDouble(newBuy.getText().toString()); 
    dNewSell = Double.parseDouble(newSell.getText().toString()); 

    String BuyVal = newBuy.getText().toString(); 
    String SellVal = newSell.getText().toString(); 

    if((BuyVal.isEmpty()) || (SellVal.isEmpty())) { 
     Toast.makeText(this, "ZERO", Toast.LENGTH_SHORT).show(); 
    } else { 
     Intent intent = new Intent(Values.this, calculator.class); 
     Bundle b = new Bundle(); 
     b.putDouble("valueSell", dNewSell); 
     b.putDouble("valueBuy", dNewBuy); 
     b.putString("flag", flag); 
     intent.putExtras(b); 
     startActivity(intent); 
    } 

newSellnewBuyは2 EditTexts ..です

は、

} else {}一部は正常に動作している:/

しかし、値が空の場合、それは私にこれを提供します。..

java.lang.IllegalStateException: Could not execute method of the activity 

マニフェスト::

<uses-permission android:name="android.permission.INTERNET" /> 
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 

<application 
    android:allowBackup="true" 
    android:icon="@mipmap/ic_launcher" 
    android:label="@string/app_name" 
    android:supportsRtl="true" 
    android:theme="@style/AppTheme"> 
    <meta-data 
     android:name="com.google.android.gms.version" 
     android:value="@integer/google_play_services_version" /> 

    <activity android:name=".MainActivity"> 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 

      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 
    </activity> 
    <activity android:name=".calculator" /> 
    <activity android:name=".About" /> 
    <activity android:name=".Values" 
       android:theme="@android:style/Theme.Holo.Light.Dialog.NoActionBar"> 
    </activity> 
</application> 

+0

私たちにあなたのマニフェストをお願いします。 –

+0

@PedroOliveira done –

+0

完全なスタックトレースを提供してください。別のエラーが発生している可能性があり、ログからログアウトしていない可能性があります。 –

答えて

0

null値がdoubleに変換することができないためです。

"dNewBuy = Double.parseDouble(newBuy.getText()のtoString());

dNewSell = Double.parseDouble(newSell.getText()のtoString());"

このようにコードを変更してください。

public void mods(View view) { 

String BuyVal = newBuy.getText().toString(); 
String SellVal = newSell.getText().toString(); 

if((BuyVal.isEmpty()) || (SellVal.isEmpty())) { 
    Toast.makeText(this, "ZERO", Toast.LENGTH_SHORT).show(); 
} else { 

dNewBuy = Double.parseDouble(newBuy.getText().toString()); 
dNewSell = Double.parseDouble(newSell.getText().toString()); 

    Intent intent = new Intent(Values.this, calculator.class); 
    Bundle b = new Bundle(); 
    b.putDouble("valueSell", dNewSell); 
    b.putDouble("valueBuy", dNewBuy); 
    b.putString("flag", flag); 
    intent.putExtras(b); 
    startActivity(intent); 

} 
} 
+0

こんにちは..これは私のために働く>> –

0
if((newBuy.isEmpty()) || (newSell.isEmpty())) { 
    Toast.makeText(this, "ZERO", Toast.LENGTH_SHORT).show(); 
} 
+0

働かない男 –

0
public void mods(View view) { 

dNewBuy = Double.parseDouble(newBuy.getText().toString()); 
dNewSell = Double.parseDouble(newSell.getText().toString()); 

String BuyVal = newBuy.getText().toString(); 
String SellVal = newSell.getText().toString(); 
if(BuyVal !=null && SellVal !=null){ 
if((BuyVal.isEmpty()) || (SellVal.isEmpty())) { 
    Toast.makeText(this, "ZERO", Toast.LENGTH_SHORT).show(); 
} else { 
    Intent intent = new Intent(Values.this, calculator.class); 
    Bundle b = new Bundle(); 
    b.putDouble("valueSell", dNewSell); 
    b.putDouble("valueBuy", dNewBuy); 
    b.putString("flag", flag); 
    intent.putExtras(b); 
    startActivity(intent); 
} 

}

これを試してみてください、この多分文字列がnullであるため、

+0

同じ結果!!!! –

関連する問題