Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

ListView не работает выбор элемента - Программирование Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Программирование Android Как ровно наложить imageview на surfaceview http://www.cyberforum.ru/android-dev/thread1014609.html
Не удается подогнать правильно размер эти двух view. Хочу чтобы фотография накладывалась на изображение с камеры, но фотография всегда получается меньше. Помогите, пожалуйста <?xml version="1.0"...
Программирование Android Подскажите чат разработчиков под Андроид (англ/рус - без разницы) Сабж http://www.cyberforum.ru/android-dev/thread1014600.html
Программирование Android Чем улучшить курсовую(браузер)?
Люди добрые, подскажите пожалуйста чем можно улучшить курсовую и чего оригинального придумать? Ситуация такая- тема курсовой - "Браузер на андроид" - Браузер уже написан как таковой, но сегодня...
Программирование Android Как вывести текст айтема в ListView?
Добрый вечер ув. Программисты! как вывести текст итема в листвью. Пробовал так: ls2.setOnItemClickListener(new AdapterView.OnItemClickListener() { public void...
Программирование Android Ошибка подписи пакета http://www.cyberforum.ru/android-dev/thread1013528.html
Здравствуйте! Не получается подписать пакет, делаю так контекстное меню->Android tools->Export Signed Application Package, в результате выдает ошибку, в программе имеет единственная папка values(в...
Программирование Android Кастомизация заголовока окна Лайауты имеют белый фон и тему по-умолчанию. На версии 4.1 заголовки окон не отделены визуально от самих окон и текст в них плохо виден. Можно ли изменить свойства заголовков без применения тем? подробнее

Показать сообщение отдельно
Т_Ё_М_А
23 / 6 / 2
Регистрация: 14.12.2009
Сообщений: 282

ListView не работает выбор элемента - Программирование Android

21.11.2013, 22:11. Просмотров 1212. Ответов 10
Метки (Все метки)

Доброго времени суток. Который день мучаюсь. Не знаю как поменять цвет ListView, так что бы не сбить работу выбора элемента при нажатии. Прочитал уже много тем, и ничего не помогает... что я делаю не так?
activity
Кликните здесь для просмотра всего текста
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
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
public class TwoActivity extends ListActivity {
    
    //массив главных текстов списка
    String[] mSign = { "Тест","Язвенные болезни", "При остеохондрозе",
            "Слух", "Зрение", "Чувства", "Суставы",
            "Радикулиты"};
    //массив второстепенных текстов списка
    String[] mDate = { "тест работы энергии","и другие болезни желудочно-кишечного тракта",
            "боли в спине и пояснице, межпозвоночной грыже",
            "хронические заболевания ушей",
            "при заболевании глаз ( катаракта, глаукома)",
            "при исчезновении чувств вкуса и обоняния",
            "заболевания суставов - ревматоидный артрит",
            "хронические, с болевым синдромом"};
    //массив картинок списка
    Integer[] mImage = { R.drawable.energy, R.drawable.stomach,
            R.drawable.spine3, R.drawable.ear1, R.drawable.eye3,
            R.drawable.feelings1, R.drawable.bones, 
            R.drawable.spine4,
            };
    //объявляем адаптер
    myAdapter mAdapter;
 
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        //setContentView(R.layout.main);
        
        mAdapter = new myAdapter(this);
        setListAdapter(mAdapter);
 
    }
    //прослушиватель выбора элементво списка
    @Override
    protected void onListItemClick(ListView l, View v, int position, long id) {
        //при нажатой строке №=position, вызываем новую страницу
        switch (position) {
        case 0:
            Intent intent = new Intent().setClass(this, Test1.class);
            startActivity(intent);
            break;
        case 1:
            intent = new Intent().setClass(this, MainListItem1.class);
            startActivity(intent);
            break;
        case 2:
            intent = new Intent().setClass(this, MainListItem2.class);
            startActivity(intent);
            break;
        case 3:
            intent = new Intent().setClass(this, MainListItem3.class);
            startActivity(intent);
            break;
        case 4:
            intent = new Intent().setClass(this, MainListItem4.class);
            startActivity(intent);
            break;
        case 5:
            intent = new Intent().setClass(this, MainListItem5.class);
            startActivity(intent);
            break;
        case 6:
            intent = new Intent().setClass(this, MainListItem6.class);
            startActivity(intent);
            break;
        case 7:
            intent = new Intent().setClass(this, MainListItem7.class);
            startActivity(intent);
            break;
        }
        
        //String selection = mAdapter.getString(position);
        //Toast.makeText(this, selection, Toast.LENGTH_LONG).show();
    }
        //передаём данные адаптеру для построения нашего списка
    public class myAdapter extends BaseAdapter {
        private LayoutInflater mLayoutInflater;
 
        public myAdapter(Context ctx) {
            mLayoutInflater = LayoutInflater.from(ctx);
        }
 
        public int getCount() {
            return mSign.length;
        }
 
        public Object getItem(int position) {
            return position;
        }
 
        public long getItemId(int position) {
            return position;
        }
 
        public String getString(int position) {
            return mSign[position] + " (" + mDate[position] + ")";
        }
 
        public View getView(int position, View convertView, ViewGroup parent) {
            
            if (convertView == null)
                convertView = mLayoutInflater.inflate(R.layout.list_item, null);
 
            ImageView image = (ImageView) convertView.findViewById(R.id.icon);
            image.setImageResource(mImage[position]);
 
            TextView sign = (TextView) convertView.findViewById(R.id.sign);
            sign.setText(mSign[position]);
 
            TextView date = (TextView) convertView.findViewById(R.id.date);
            date.setText(mDate[position]);
            
            return convertView;
        }
    } // end myAdapter}

xml file
Кликните здесь для просмотра всего текста
XML
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
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:padding="5dp" 
    >
 
    <ImageView
        android:id="@+id/icon"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="#000000"
        android:padding="1dp"
         />
 
    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="vertical"
        android:paddingLeft="15dp" >
 
        <TextView
            android:id="@+id/sign"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:fontFamily="Helvetica"
            android:textColor="#141414"
            android:textSize="18sp"
            android:textStyle="bold" />
 
        <TextView
            android:id="@+id/date"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:textSize="14sp"
            android:textStyle="italic" 
            android:textColor="#404040"/>
    </LinearLayout>
 
</LinearLayout>

Если просто в LineralLayout добавляю android:background="#FFFFFF" - цвет меняется, но выбор перестаёт работать
Если в адаптер добавляю convertView.setBackgroundColor(Color.WHITE); -цвет меняется, но выбор тоже перестаёт работать. Цвет через ресурсы - тоже не помогло.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru