2016-12-12 20 views
0

私は初心者のプログラマーです、私はいくつかのコードを書いています。別のクラスでwallet_idを取得したいのですが、この変数を試してみると、常にvalue = 0になります。クラスChooseWalletでは、wallet_idは値wallet_idをうまく設定します。しかし、別のクラスでwallet_idがどのように取得されるのか分かりません。何か案が?別のクラスのListViewからID値を取得

public class ChooseWallet extends AppCompatActivity { 
public int wallet_id; 
DatabaseDEO db = new DatabaseDEO(this); 
ListView choose; 
private SimpleCursorAdapter adapter; 
final String[] from = new String[] {Wallets.COLUMNS.name,Wallets.COLUMNS.surname}; 
final int[] to = new int[] {R.id.name, R.id.surname }; 



@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_choose_wallet); 
    getSupportActionBar().setDisplayHomeAsUpEnabled(true); 
    choose = (ListView)findViewById(R.id.listselement); 
    choose.setEmptyView(findViewById(R.id.null)); 
    Cursor cursor = db.fetch(); 
    adapter = new SimpleCursorAdapter(this, R.layout.activity_see_record, cursor, from, to, 0); 
    adapter.notifyDataSetChanged(); 

    choose.setAdapter(adapter); 

     choose.setOnItemClickListener(new OnItemClickListener() { 
    @Override 
    public void onItemClick(AdapterView<?> parent, View view, int position, long id) { 
     walllet_id = position+1; 
    } 
}); 

}}

+0

の可能性のある重複(http://stackoverflow.com/questions/27103754/how-to-get-id-of- [アンドロイドにリストビューの特定のアイテムのIDを取得する方法?]:このような 特定のアイテムのリストビューインアンドロイド) –

+0

これは複製ではありません。私はselectem item idを取得し、このidを他のクラスで使用します。この時点で、ID = 0は、常に変数を宣言した後に0の値を持つためです。 – Adrien

+0

あなたの質問をより識別可能なものにすることはできますか? –

答えて

0

私の意見では、これは不可能です。 SpinnerはListViewより優れたソリューションでした。

0

多分、あなたはsetOnItemClickListenerを使用しようとすることができます。

choose.setOnItemClickListener(new OnItemClickListener() { 
     @Override 
     public void onItemClick(AdapterView<?> parent, View view, int position, long id) { 
      walllet_id = position+1; 
     } 
    }); 
+0

私はそれを修正しますが、別のクラスwallet_idで変数を使用しようとすると、値は0になります。クラスChooseWalletでは良い値を持っていますが、別のクラスでwallet_idを取得する方法がわかりません。 – Adrien

関連する問題