0

これが私のカーソルコードです。私が混乱しているのは、各値をチェックし、計算に基づいてブール値の x を true または false にする方法です。

  private boolean fillData() {
       Cursor c = DBHelper.fetchAllIDs();
       // List<String> idList = new ArrayList<String>();
       if (c.moveToFirst()) {
        do {
            String X = (c.getString(c.getColumnIndexOrThrow("IDno")));
            Toast.makeText(getApplicationContext(), "" +X, Toast.LENGTH_LONG).show();
            if (Idno.getText().toString().equals(X));
            {
                Toast.makeText(getApplicationContext(),   ""+Idno.getText().toString(), Toast.LENGTH_LONG).show();
                x=true;
            }
        } while (c.moveToNext());


       }
      return x;
   }
4

1 に答える 1

0
  1. xカーソルでループする前に false に設定します。

    private boolean fillData() {
        boolean x = false;
    
        // ...
    
    }
    
  2. 次のコードを置き換えます。

    if (Idno.getText().toString().equals(X));
    {
        Toast.makeText(getApplicationContext(),   ""+Idno.getText().toString(), Toast.LENGTH_LONG).show();
        x=true;
    }
    

    これとともに:

    if (Idno.getText().toString().equals(X))
    {
        Toast.makeText(getApplicationContext(),   ""+Idno.getText().toString(), Toast.LENGTH_LONG).show();
        x=true;
        break;
    }
    

    注意:ステートメントの末尾から を
    削除し、ブロックの末尾にステートメントを追加しました。;ifbreakif

于 2012-10-07T07:26:03.400 に答える