С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

Программирование Android

Войти
Регистрация
Восстановить пароль
 
Gish8
0 / 0 / 0
Регистрация: 22.12.2012
Сообщений: 4
#1

Хочу сделать подписи к меню, меню у меня создано ListView, есть два массива, как их передать в адаптер? - Программирование Android

25.11.2013, 15:27. Просмотров 632. Ответов 2
Метки нет (Все метки)

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
public class MainMenu extends ListActivity {
 
public void onCreate(Bundle cicle) {
 
    super.onCreate(cicle);
    setContentView(R.layout.menu_main);
 
    String[] catnames = getResources().getStringArray(R.array.cat_names);
 
// String[] catnames1 = getResources().getStringArray(R.array.label1); - здесь у меня второй массив с подписями. 
 
    ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
            R.layout.rowlayout, R.id.label, catnames);
 
    setListAdapter(adapter);
 
}
 
protected void onListItemClick(ListView l, View v, int position, long id) {
 
    Intent intent = null;
 
    switch (position) {
 
    case 0:
        intent = new Intent(this, AboutStudio.class);
        break;
    case 1:
        intent = new Intent(this, Works.class);
        break;
    case 2:
        intent = new Intent(this, Service.class);
        break;
 
    case 3:
        intent = new Intent(this, News.class);
        break;
 
    case 4:
        intent = new Intent(this, Contacts.class);
        break;
 
    case 5:
        intent = new Intent(this, Team.class);
        break;
    case 6:
        intent = new Intent(this, GoogMap.class);
        break;
 
    }
    startActivity(intent);
 
}
Могу ли я передать это: String[] catnames1 = getResources().getStringArray(R.array.label1) вместе с этим String[] catnames = getResources().getStringArray(R.array.cat_names); сюда >> ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, R.layout.rowlayout, R.id.label, catnames); Если могу, то через что и как?

Добавлено через 3 часа 25 минут
Я просто поверить не могу, что бы создать item нужно накатать кучу громоздкого кода... Все таки как можно как то умять все в несколько строк.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.11.2013, 15:27
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Хочу сделать подписи к меню, меню у меня создано ListView, есть два массива, как их передать в адаптер? (Программирование Android):

У меня есть меню, с левой стороны,как вставить картинку или текст справа от меню? - HTML, CSS
У меня есть меню, с левой стороны,как вставить картинку или текст справа от меню?????????????

Есть функция которая выводит меню. Как сделать, чтобы она выводила определенное меню на определенной странице? - PHP
function dopMenuG($parent, $lvl) { global $a; global $link; $lvl++; $CssClass=1; $sql = &quot;SELECT...

Как сделать свои подписи в меню загрузки? - Windows 7
Как сделать свои подписи в меню загрузки? А то поставил 32 и 64 битовые семерки, а у них меню загрузки одинаковое.

Как сделать свои подписи в меню загрузки Grub? - Ubuntu Linux
Как сделать свои подписи в меню загрузки Grub?

Как сделать каскадное меню в контекстном меню Internet Explorer - Windows XP
Доброго времени суток уважаемые форумчане! Подскажите как сделать каскадное меню в контекстном меню Internet Explorer. В интернете куча...

Меню codrops (стильное меню), Как сделать чтобы текст не смещался в блоке? - HTML, CSS
вот менюшка (live-code): http://jsfiddle.net/Stasonix/gPbxC/ на всякий случай вот листинг: &lt;ul id=&quot;navigation&quot;&gt; &lt;li...

2
NiRamz
211 / 211 / 16
Регистрация: 26.12.2010
Сообщений: 691
25.11.2013, 16:57 #2
Пишите кастомный адаптер. там не так уж и много нужно делать.
0
konrads
2 / 2 / 0
Регистрация: 05.03.2013
Сообщений: 49
26.11.2013, 13:33 #3
Используйте SimpleAdapter

Создайте в res.layout файл например mytable.xml
приблизительно такой:

XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" >
 
        <TextView
            android:id="@+id/field1"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_weight="1" />
 
        <TextView
            android:id="@+id/field2"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_weight="1" />
 
    </LinearLayout>
В программе:

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
final String ATTRIBUTE_CATNAMES1 = "names1";
final String ATTRIBUTE_CATNAMES2 = "names2";
......
......
            
ArrayList<Map<String, Object>> data = new ArrayList<Map<String, Object>>(catnames.length);
Map<String, Object> m;
 
......
......
 
for (int i = 0; i < catnames.length; i++) {
    m = new HashMap<String, Object>();
    m.put(ATTRIBUTE_CATNAMES1, catnames[i]);
    m.put(ATTRIBUTE_CATNAMES2, catnames1[i]);
    data.add(m);
}
......
......
// массив имен атрибутов, из которых будут читаться данные
String[] from = { ATTRIBUTE_CATNAMES1, ATTRIBUTE_CATNAMES2 };
            
// массив ID View-компонентов, в которые будут вставлять данные
int[] to = { R.id.field1, R.id.field2 };  // id из созданного нами xml файла
 
// создаем адаптер
SimpleAdapter sAdapter = new SimpleAdapter(this, data, R.mytable, from, to);
 
// присваиваем списку адаптер
ListView lv = (ListView) findViewById(R.id.MyListView);
lv.setChoiceMode(ListView.CHOICE_MODE_SINGLE);
lv.setAdapter(sAdapter);
Приблизительно так, писал быстро, ошибки могут быть, но направление верное на мой взгляд
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.11.2013, 13:33
Привет! Вот еще темы с ответами:

Как изменить подписи в меню? (MFC) - Visual C++
Есть проект, созданный на основе MFC (диалоговый). В нем есть меню созданное через визуальный редактор, как я понял. Среда VS 2010. Нужно...

Хочу сделать меню с запоминанием на Cookies - JavaScript
Здравствуйте. Хочу сделать меню с запоминанием на куках. Подскажите как сделать запоминание стилей css. (если можно, с примером) ...

Сделать из элементов ListView подобие меню - C#
Здравствуйте, мне нужно из пар строк, отображаемых в ListView сделать подобие меню - тоесть, чтобы пары строк выделялись как один объект. ...

Как добавить выплывающее меню к уже готовому горизонтальному меню (не меняя дизайн горизонтального меню)? - HTML, CSS
&lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML 1.0 Strict//EN&quot; &quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd&quot;&gt; &lt;html...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.