2016-09-21 42 views
0

我有这样的代码安卓:获取文本Editext ==项数组

if(edt_i.getText().toString() == Arrays.asList(coupon).contains("VIP537129")) { 
       Toast.makeText(MainActivity.this,"50% ", 
         Toast.LENGTH_SHORT).show(); 

我的数组

String[] coupon = { 
     "MEM537128", 
     "MEM537129", 
     "VIP537128", 
     "VIP537129" 
    }; 

我要检查在EDITTEXT使用Array文本,但没有工作。请帮帮我!

编辑

 if (Arrays.asList(coupon).contains(edt_i.getText().toString())) { 
       Toast.makeText(MainActivity.this,"10% ", 
         Toast.LENGTH_SHORT).show(); 
      }else if(Arrays.asList(coupon).contains(edt_i.getText().toString())) { 
       Toast.makeText(MainActivity.this,"20% ", 
         Toast.LENGTH_SHORT).show(); 
      }else if(Arrays.asList(coupon).contains(edt_i.getText().toString())) { 
       Toast.makeText(MainActivity.this," 30% ", 
         Toast.LENGTH_SHORT).show(); 
      }else if(Arrays.asList(coupon).contains(edt_i.getText().toString())) { 
       Toast.makeText(MainActivity.this,"50% ", 
         Toast.LENGTH_SHORT).show(); 
      }else { 
       Toast.makeText(MainActivity.this," False ", 
         Toast.LENGTH_SHORT).show(); 
      } 

但吐司只显示10%

回答

0

不知道你的问题。这是你需要的吗?

int[] percent = {10,20,30,50}; 


if(Arrays.asList(coupon).contains(edt_i.getText().toString())) 
{ 
Toast.makeText(MainActivity.this,percent[Arrays.asList(bigger).indexOf(edt_i.getText().toString())].toString()+"%", 
             Toast.LENGTH_SHORT).show(); 
} 
else 
{ 
Toast.makeText(MainActivity.this," False ", 
          Toast.LENGTH_SHORT).show(); 
} 
+0

这工作,但我有多项目的名单,所以我不能使用这种方法 –

+0

嗯我没有得到你的意思。你需要获得数组中存在字符串的索引吗?要么 ? – deviantxdes

+0

我有更新编辑! –

0

你需要检查一个字符串包含字符串数组,这样,

if(Arrays.asList(coupon).contains(edt_i.getText().toString())) { 
    Toast.makeText(MainActivity.this,"50% ",Toast.LENGTH_SHORT).show(); 
} 
+0

这工作,但我有多项目在列表中,所以我不能使用这种方法 –

0

,你必须使用方法的indexOf为了找到优惠券阵列的inputText的位置。

String inputText = edt_i.getText().toString(); 
    switch (Arrays.asList(test).indexOf(inputText)) { 
     case 0: 
      Toast.makeText(MainActivity.this,"10% ", Toast.LENGTH_SHORT).show(); 
      break; 
     case 1: 
      Toast.makeText(MainActivity.this,"20% ", Toast.LENGTH_SHORT).show(); 
      break; 
     case 2: 
      Toast.makeText(MainActivity.this,"30% ", Toast.LENGTH_SHORT).show(); 
      break; 
     case 3: 
      Toast.makeText(MainActivity.this,"50% ", Toast.LENGTH_SHORT).show(); 
      break; 
     default: 
      Toast.makeText(MainActivity.this," False ", Toast.LENGTH_SHORT).show(); 
    }