Прежде всего я новичок в программировании Android и в StackOverflow !!Запуск меню опций из списка в Android
Я создал динамическое представление ListView, я имею в виду, я загружаю список строк из файла.
Теперь, что я хочу сделать, это запустить меню, например меню опций, когда элемент был нажат.
Я искал, и простой способ - использовать метод надувания, но он использует меню в качестве аргумента. Однако я настроил прослушиватель с OnItemClick, который использует в качестве аргумента AdapterView, View arg1, int arg2 и long arg3, но мне нужно меню для метода надувания ...: S
вот код для mainactivity:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.menu);
ListView list = (ListView) findViewById(R.id.listView1);
func = getTurmas();
list.setAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, func));
list.setOnItemClickListener(new AdapterView.OnItemClickListener() {
public void onItemClick(AdapterView<?> arg0, View arg1,
int arg2, long arg3) {
//System.out.println("teste");
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.menu_showup, null);
//my problem is here,instead of NULL I should put a menu, but how?
}
});
}
Примечание: в папке меню у меня есть меню созданное с помощью 3-х пунктов
заранее спасибо за любую помощь
с наилучшими пожеланиями,
Karloz
Привет Vikalp Patel! Спасибо за ваш ответ! Я получил то, что объяснил, и я его реализовал. Однако он не работал. Первые три строки, которые вы предлагаете в своем коде, я ввел в метод OnCreate (Bundle savedInstanceState) действия. Это верно? и 2-я строка, когда я установил адаптер, мне пришлось изменить на list.setAdapter (новый ArrayAdapter (это android.R.layout.simple_list_item_1, func)); , потому что, когда я помещаю вашу строку, он говорит мне: «Невозможно создать экземпляр типа ListAdapter» даже после импорта класса List.adapter. У вас есть идеи, почему это так? BR Karloz –
@ karloz.smith Надеюсь, вы получите 'ArrayList-via getTurmas() в func'very правильно. –
@ karloz.smith Я отредактировал код, пожалуйста, просмотрите его. Попробуйте дважды проверить свой 'func = getTurmas()' ли он возвращает 'Array' или нет ?. Также попробуйте просто проверить код, работает ли он или нет. 'String [] func = new String [] {« Android »,« iPhone »,« WindowsMobile », « Blackberry »,« WebOS »,« Ubuntu », «Windows7», «Max OS X», «Linux», «OS/2»}; '.' Вычислите свой func = getTurmas() во время тестирования ' –