2013-12-18 5 views
2

У меня уже был успех при создании плавающего контекстного меню, когда я долго нажимаю один элемент в виде списка. Однако, когда я нажимаю меню в контекстном меню, ничего не происходит. Я хочу, чтобы он начал новую деятельность. Здесь что-то не так?Как начать активность при нажатии контекстного меню?

protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_activity_view); 

    dataSource = new DBDataSource(this); 

    dataSource.open(); 

    values = dataSource.getAllMahasiswa(); 

    ArrayAdapter<Mahasiswa> adapter = new ArrayAdapter<Mahasiswa> 
    (this, android.R.layout.simple_list_item_1, values); 

    setListAdapter(adapter); 

    listView=(ListView) findViewById(android.R.id.list); 
    registerForContextMenu(listView); 



} 
public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) { 
     super.onCreateContextMenu(menu, v, menuInfo); 

     menu.add(0, 1000, 0, "Edit"); 
     menu.add(0, 1001, 0, "Hapus"); 

} 

public boolean onContextMenuItemSelected(MenuItem item){ 
    switch (item.getItemId()) { 
     case 1000:    
      Intent i = new Intent(ActivityView.this, Tes.class); 

      startActivity(i); 
     break; 
     case 1001: 
      //not yet 
     break; 
     } 
     return super.onContextItemSelected(item);   

} 

ответ

0

Используйте этот

@Override 
public boolean onContextItemSelected(MenuItem item) 
{ 
     switch (item.getItemId()) 
     { 
     case R.id.pick_camera: 

      break; 
     } 
    return super.onContextItemSelected(item); 
} 

с

@Override 
    public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) 
    { 

     getMenuInflater().inflate(R.menu.image_options, menu); 
     super.onCreateContextMenu(menu, v, menuInfo); 
    } 

создать image_options.xml в папке меню ресурса.

<?xml version="1.0" encoding="utf-8"?> 
<menu xmlns:android="http://schemas.android.com/apk/res/android" > 

    <item 
     android:id="@+id/pick_camera" 
     android:title="Use Camera"> 
    </item> 

</menu> 
+0

thx для ответа. я попробовал, но даже запутался @ _ @. sory im to noob :( так что на моем случае появилось плавающее контекстное меню, первое меню - «Редактировать» и второе «Хапус», но когда я нажимаю «Изменить», действие не запускается, поэтому я попытался toast msg. и даже тост не работал тоже, так что, возможно, в моем контекстном меню не так? :(Пожалуйста, посмотрите на мой список тоже сверху. thx :) – user3115462

+0

Я проверил это, все в порядке. Попробуйте изменить android.R .layout.simple_list_item_1 к вашему макету, чтобы сделать свой список, а затем изменить адаптер, затем попробуйте. – keshav

+0

oh it work now. Большое спасибо за помощь: D – user3115462

Смежные вопросы