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

Вызов нестатического метода из другого класса - Android

Восстановить пароль Регистрация
Другие темы раздела
Android Volley делает повторные запросы http://www.cyberforum.ru/android-dev/thread1454885.html
Скажите пожалуйста, установил библиотеку Volley. Сделал запрос, который принимает настройки. Все это висит в onCreate. Так вот когда я меню ориентацию телефона запрос снова происходит, подскажите как запретить делать это данной библиотеке.
Android Изменить ListView Есть ListView, которые задается при запуске приложения Далее у меня создает запрос к серверу и получаю данные. Скажите как мне теперь изменить некоторые значения в listView package ru.animalface.app.adapter; import ru.animalface.app.R; import ru.animalface.app.model.NavDrawerItem; http://www.cyberforum.ru/android-dev/thread1454856.html
BackupAgent для записи и восстановления базы данных Android
Здравствуйте! Нахожусь в ступоре уже второй день. Необходимо создать класс BackupAgentHelper, чтобы резервировать базу данных и восстановить ее при переустановки приложение на устройство. Кто-нибудь сталкивался с подобной проблемой? Какие методы прописывать в классе? Как и где ими пользоваться вне его? Как действовать дальше? @Override public void onCreate() { FileBackupHelper hosts =...
Работа с vkontakte API Android
Здравствуйте, я раньше писал об аутентификацие через соц. сети. Решил использовать ВК, нашел ссылку: http://interosite.ru/articles/rabota-s-api-vkontakte-v-android. Все сделал как написано, приложение запускается, при нажатие на кнопку должен открыться браузер (или ВК клиент, если есть) и спросить разрешения о доступе к аккаунту, но когда нажать на кнопку вылезает сообщение типа: "нет такого...
Android Куда делся Eclipse для разработки под Android на java, xml http://www.cyberforum.ru/android-dev/thread1454661.html
Куда делся ECLIPSE для разработки под Android на java,xml ??? раньше был у меня на Windows, потом купил себе macbook air в 2014году и на него нашел Eclipse, потому продал ноут на винде sony vaio и macbook air, купил новый macbook 2015 12', и ищу Eclipse.... нету нигде на mac os yosemate Eclipse Android tools...у кого есть?
Android Чем отличается степень защищенности приложнения на гугл плей от "просто" apk Поясню проблему, у меня есть приложение которое я хотел бы устанавливать только лично, помогает ли в этом гугл плей? подробнее

Показать сообщение отдельно
Mikalai
248 / 224 / 91
Регистрация: 11.01.2015
Сообщений: 642
24.05.2015, 02:05     Вызов нестатического метода из другого класса
вот у тебя в адаптере метод

Java
1
2
3
4
    public void Met(){
        MainActivity yr = new MainActivity();
        yr.Activ2();
    }
тут ты создаёшь новый экземпляр MainActivity. Поэтому там всё пусто.

В адаптер ты ж передаёшь ссылку на майн активити(this). Её нужно подхватить и использовать, а не моздавать новыеэкземпляры. Адаптер должен выглядеть примерно так:

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
public class Adapter extends BaseAdapter {
 
    private ArrayList<Integer> Bol41 = new ArrayList<>();
    private ArrayList<String> str = new ArrayList<>();
    MainActivity ma;
 
    private Context ctx;
 
    Adapter(Context context, ArrayList<Integer> Bol4, ArrayList<String> st) {
        Bol41=Bol4;
        ctx=context;
        str=st;
        this.ma = (MainActivity) context;
    }
 
    @Override
    public int getCount() {
        return Bol41.size();
    }
 
    @Override
    public Object getItem(int position) {
        return Bol41.get(position);
    }
 
    @Override
    public long getItemId(int position) {
        return position;
    }
 
    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        Log.i("333", " Проверка 1");
        View view = convertView;
        if (convertView == null)
        {
            LayoutInflater lInflater = (LayoutInflater) ctx.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
            view = lInflater.inflate(R.layout.main, parent, false);
        }
 
        view.findViewById(R.id.LL1).setBackgroundResource(Bol41.get(position));
        ((TextView) view.findViewById(R.id.tvDescr)).setText(str.get(position));
        view.findViewById(R.id.imageView1).setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Met();
            }
        });
        return view;
    }
 
    public void Met(){
        this.ma.Activ2();
    }
}
 
Текущее время: 14:47. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru