2012-02-16 11 views
0

私はリストビューを使用するアンドロイドアプリケーションを作っています。私はアイテムが一度クリックされると、アイテムのインデックス番号を取得したい(ワンクリック)。私はいくつかのチュートリアルを行ってきましたが、誰も助けに見えませんでした。どのようにインデックス番号を取得し、Stringに渡すことができます。私はそれを削除したいが、私はその部分を自分の管理します。私はインデックス番号だけを必要とし、それを文字列に渡します。 onCreateメソッドの後に、インデックス番号を取得するコードがあります。助けて、事前に感謝してください!これは私が使用していたコードです:onItemClickメソッドのパラメータはアンドロイドのリストビューアイテムのインデックスを取得する

public void onItemClick(AdapterView<?> parent, View view, int position, long id) { 
} 

位置はあなたが望むインデックスを与える

public class NotesActivity extends ListActivity implements OnClickListener { 
/** Called when the activity is first created. */ 
List<String> myList = new ArrayList<String>(); 
EditText AddItemToListViewEditText; 
Button AddItemToListView, AddItemToListViewButton, CancelButton, DeleteButton; 
LinearLayout AddItemToListViewLinearLayout, DeleteItemFromListViewLinearLayout; 
public String DeleteIndexNumber; 
    static final String[] COUNTRIES = new String[] { 
     "Matte på A1 med Ole", "Engelsk på klasserommet", "Film på A1 etter friminuttet" 
     }; 
@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.notes); 
    setListAdapter((ListAdapter) new ArrayAdapter<String>(this, R.layout.list_item, COUNTRIES)); 
    setListAdapter((ListAdapter) new ArrayAdapter<String>(this, R.layout.list_item, myList)); 

    ListView lv = getListView(); 
    lv.setTextFilterEnabled(true); 

    lv.setOnItemClickListener(new OnItemClickListener() { 
     public void onItemClick(AdapterView<?> parent, View view, 
      int position, long id) { 
     // When clicked, show a toast with the TextView text 
     Toast.makeText(getApplicationContext(), "Note: " + ((TextView) view).getText(), 
      Toast.LENGTH_SHORT).show(); 
     //This is where i need the index number to be passed to the string "DeleteIndexNumber" 
     DeleteItemFromListViewLinearLayout = (LinearLayout)findViewById(R.id.DeleteItemFromListViewLinearLayout); 
     DeleteItemFromListViewLinearLayout.setVisibility(View.VISIBLE); 
    } 
    }); 
    } 
@Override 
public boolean onCreateOptionsMenu(Menu meny) { 
    MenuInflater inflater = getMenuInflater(); 
    inflater.inflate(R.menu.listviewmenubuttons, meny); 
    return true; 
} 
@Override 
public boolean onOptionsItemSelected(MenuItem item) { 
    switch(item.getItemId()) { 
    case R.id.AddItemToListView: 
     AddItemToListViewButton = (Button)findViewById(R.id.AddItemToListViewButton); 
     CancelButton = (Button)findViewById(R.id.CancelButton); 
     DeleteButton = (Button)findViewById(R.id.DeleteButton); 
     CancelButton.setOnClickListener(this); 
     DeleteButton.setOnClickListener(this); 
     AddItemToListViewLinearLayout = (LinearLayout)findViewById(R.id.AddItemToListViewLinearLayout); 
     AddItemToListViewButton.setOnClickListener(this); 
     AddItemToListViewLinearLayout.setVisibility(View.VISIBLE); 
     break; 
     } 
    return true; 
} 
public void onClick(View src) { 
    switch(src.getId()) { 
    case R.id.AddItemToListViewButton: 
     AddItemToListViewEditText = (EditText)findViewById(R.id.AddItemToListViewEditText); 
     myList.add(AddItemToListViewEditText.getText().toString()); 
     ((ArrayAdapter)getListView().getAdapter()).notifyDataSetChanged(); 
     AddItemToListViewEditText.setText(""); 
     AddItemToListViewEditText.clearFocus(); 
     InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); 
     imm.toggleSoftInput (InputMethodManager.SHOW_FORCED, InputMethodManager.RESULT_HIDDEN); 
     imm.toggleSoftInput(InputMethodManager.SHOW_FORCED, 0); 
     AddItemToListViewLinearLayout.setVisibility(View.GONE); 
     break; 
    case R.id.CancelButton: 
     DeleteItemFromListViewLinearLayout = (LinearLayout)findViewById(R.id.DeleteItemFromListViewLinearLayout); 
     DeleteItemFromListViewLinearLayout.setVisibility(View.INVISIBLE); 
     break; 
    case R.id.DeleteButton: 
     break; 
    } 
} 
} 
+1

私たちのリストビューonItemClick整数変数positionは、listviewのクリックされた項目位置です。これを使用して、listviewの項目位置をクリックします。 – Deepak

答えて

0

が、それは位置パラメータではありませんonItemClickで?

0

onItemClickのpositionパラメータは、リスト内のクリックされたItemのインデックスを提供します。

関連する問題