Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
Другие темы раздела
Программирование Android Ошибка с parse.com - "пробелом, апостроф" http://www.cyberforum.ru/android-dev/thread1648026.html
Во-первых, объясню ситуацию... Существует запись данных на parse.com и все работает хорошо. Вот как выглядит запись и загрузки данных из него: public ArrayList<MyObj> loadMyObjs() { ...
Программирование Android Как при смене темы менять стили кнопок?
В приложении используются 2 вида кнопок. Это разные кнопки как по цвету, так и по другим свойствам. Свойства этих 2-х видов кнопок описаны в 2-х разных стилях. <!-- Стиль больших кнопок для...
Подскажите у кого происходит вылет при переходе на Activity Программирование Android
java.lang.NullPointerException java.lang.RuntimeException: Unable to start activity ComponentInfo{com.bastion.teplocomgsm10/com.bastion.teplocomgsm10.NNSSS}: java.lang.NullPointerException at...
Программирование Android Добавление Actionbar в FragmentActivity Всем привет! Подскажите пожалуйста как добавить Actionbar в FragmentActivity. http://www.cyberforum.ru/android-dev/thread1647672.html
Программирование Android Раздельная навигация по GPS или по Glonass http://www.cyberforum.ru/android-dev/thread1647667.html
Возможен - ли раздельный выбор навигации или от спутников GPS или от спутников Глонасс? Сейчас почему - то только одна кнопка "Местоположение" в верхних шторках телефонов. Какая логика...
Программирование Android Взаимодействие Fragment-ов через Activity (interface)
Ребята гляньте пожалуйста не замыленным глазом на код. Пытаюсь понять как организовать взаимодействие фрагментов с помощью активити через интерфейс, но "...что-то пошло не так...", второй день...
Программирование Android Ошибка в v23 сразу после создания проекта
Я только создал новый проект, а Android Studio уже закидывает меня ошибками. Error:(1) Error retrieving parent for item: No resource found that matches the given name...
Программирование Android Затруднение с переключением между активностями Чтобы лучше понимать решил написать приложение расписания пар в университете и наткнулся на одну проблему. Создал одну активность в которой 7 кнопок при нажатии на одну из них происходит переход на... http://www.cyberforum.ru/android-dev/thread1647306.html
Программирование Android Navigation drawer http://www.cyberforum.ru/android-dev/thread1647296.html
Как так подключить navigation drawer чтобы он был доступен не в одном а во всех или в нескольких активити приложения и во всех этих активити чтобы также не нарушался свой контент кнопки, картинки и...
Программирование Android Переход между окнами Читая книгу по андройду и юзая AndroidStudio воздник вопрос* при создании нового проекта в андройде при указании формы BlankActivity выстраивается код из activity_main.xml и content_main.xml ... http://www.cyberforum.ru/android-dev/thread1647184.html
Dantes2104
0 / 0 / 0
Регистрация: 13.01.2015
Сообщений: 61
0

Собственный адаптер на основе ArrayAdapter

26.01.2016, 16:53. Просмотров 857. Ответов 17
Метки (Все метки)

Хочу реализовать, чтобы при keydown элемент списка менял цвет фона, а при keyup возвращался в исходное положение, и в то же время выполнял действие которое прописано в методе onListItemClick в активити, которое использует этот адаптер.

Код адаптера
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
public class MyAdapter<T> extends ArrayAdapter<T> {
    SharedPreferences s;
    Context contextall;
 
    public MyAdapter(Context context, int resource, T[] objects) {
        super(context, resource, objects);
        contextall = context;
    }
 
    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        S.pomfv(parent, contextall);
        TextView tv = (TextView) super.getView(position,convertView,parent);
        S.pom(tv, contextall);
        S.pomtv(tv, contextall);
        tv.setOnTouchListener(new View.OnTouchListener() {
            @Override
            public boolean onTouch(View view, MotionEvent motionEvent) {
                s = PreferenceManager.getDefaultSharedPreferences(contextall);
                if (motionEvent.getAction() == MotionEvent.ACTION_DOWN) {
                    String color1 = s.getString("menfon", "#FFFFFF");
                    if (S.isHEX(color1)) {
                        view.setBackgroundColor(Color.parseColor(color1));
                    } else {
                        color1 = "#FFFFFF";
                        view.setBackgroundColor(Color.parseColor(color1));
                    }
                } else if (motionEvent.getAction() == MotionEvent.ACTION_UP) {
                    String color1 = s.getString("menfon2","#000000");
                            if (S.isHEX(color1)){
                                view.setBackgroundColor(Color.parseColor(color1));
                            }else{
                                color1 = "#000000";
                                view.setBackgroundColor(Color.parseColor(color1));
                            }
                }
 
                return true;
            }
        });
        return tv;
    }
 
 
 
}


Часть кода активити
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
 protected void onListItemClick(ListView l, View v, int position, long id) {
        switch (position) {
            case 0:
                Intent in0 = new Intent(Pre_Pre_Two_Activity.this,Pre_One_Pre_Activity.class);
                in0.putExtra("pre",0);
                startActivity(in0);
                break;
            case 1:
                Intent in1 = new Intent(Pre_Pre_Two_Activity.this,Pre_One_Pre_Activity.class);
                in1.putExtra("pre",1);
                startActivity(in1);
                break;
            case 2:
                Intent in2 = new Intent(Pre_Pre_Two_Activity.this,Pre_One_Pre_Activity.class);
                in2.putExtra("pre", 2);
                startActivity(in2);
                break;
            case 3:
                Intent in3 = new Intent(Pre_Pre_Two_Activity.this,Pre_One_Pre_Activity.class);
                in3.putExtra("pre",3);
                startActivity(in3);
                break;
 
 
        }
    }


То есть если я меняю onToucListener, то метод onListItemClick в активити не вызывается и нельзя перейти в другое активити. Класс MyAdapter используется во многих классах, поэтому я не могу просто в нём прописать переход. Заранее спасибо.

Вернуться к обсуждению:
Собственный адаптер на основе ArrayAdapter
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.01.2016, 16:53
Готовые ответы и решения:

Собственный ArrayAdapter
Доброго времени суток. Пытаюсь написать собственный адаптер для строкового типа: titles =...

ACTION_SEND в ArrayAdapter
Ребят,вопрос такой, есть GridView с картинками, к нему отдельным классом подключен Adapter....

ArrayAdapter и много заморочек
Сам ArrayAdapter String data = new String{&quot;Текст 1&quot;,&quot;Текст 2&quot;}; ArrayAdapter&lt;String&gt; adapter...

Отличия в работе ArrayAdapter
Что то не понятное с ArrayAdapter на Android 2.3, У меня есть EditText в списке, меняя значение...

Привязка класса к ArrayAdapter
Добрый день. Есть класс, содержащий опросы private static class Polls { private final...

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