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

Вызов новой активити не из класса активити - Android

Восстановить пароль Регистрация
Другие темы раздела
Android Размер значков в ActionBar http://www.cyberforum.ru/android-dev/thread1197567.html
Подскажите пожалуйста, какие размеры значков должны быть в ActionBar? Сделал значки для всех разрешений размером: 144, 96, 72, 48 и 36. На HD разрешении выглядит аккуратно, а вот на разрешении меньшем, почему то значки стали огромными. Что я не так делаю? Спасибо.
Android Отмечаем в приложении пройденные задания Здравствуйте уважаемые программисты, помогите пожалуйста, разобраться с разработкой небольшого кода на Java в среде Eclipse. Есть страница приложения с множеством кнопок (при нажатии на эти кнопки появляются различные задания), как сделать так чтобы, выполнив задание правильно рядом с кнопкой появлялась небольшая картинка, символизирующая о прохождении этого задания (например, звездочка)?... http://www.cyberforum.ru/android-dev/thread1197547.html
Использование NDK Android
Пытаюсь освоить NDK... И как всегда не хватает ЗАДАНИЙ! Не могу придумать где можно использовать (для новичка в с++)... Писать еще один игровой движок (на фоне десятка готовых профессиональных) не хочу... Дополнительную систему безопасности - рано... То что видел в примерах - поражает! Хочу написать свои либы, которые будут быстрее и круче явовских... Где Вы использовали NDK в работе??? Не...
Преобразовать три значения int в дату Android
Есть 3 переменных типа int(год, месяц, день). Как правильно конвертировать в дату, чтобы поместить, к примеру, в textView "вт, 3 марта 2014"
Android Не все окна реагируют на автоповорот. Можно ли исправить? http://www.cyberforum.ru/android-dev/thread1197253.html
Доброго времени суток! итак решил я всё же сесть на ведройд так как мне понарассказали, что с ним можно вытворять всякое, и купил агрегат с версией 4,1,2. и сразу столкнулся с первой же проблемой, не все окна реагируют на автоповорот, а именно главный экран, меню и при входящим звонке. Люди добрые и недобрые помогите новичку и поведайте, можно ли с этим как-либо сладить, мож ПО какое докачать...
Android Работа с Log Ребят возникла проблема приложение вылетает с ошибкой, при этом логи говорят следующие: 06-02 15:54:11.207: D/dalvikvm(540): Not late-enabling CheckJNI (already on) 06-02 15:54:12.087: I/dalvikvm(540): threadid=3: reacting to signal 3 06-02 15:54:12.187: I/dalvikvm(540): Wrote stack traces to '/data/anr/traces.txt' 06-02 15:54:12.597: I/dalvikvm(540): threadid=3: reacting to signal 3... подробнее

Показать сообщение отдельно
Doctor_
 Аватар для Doctor_
232 / 232 / 69
Регистрация: 03.02.2011
Сообщений: 1,405
03.06.2014, 12:50     Вызов новой активити не из класса активити
Есть 4 класса:
1) WelcomeActivity;
2) MainActivity;
3) PopUpActivity;
4) Client.

Программа работает с сервером и получает данные в класс Client. Логика такая, загружается WelcomeActivity, куда пользователь вводит данные и отсылает на сервер. Если сервер успешно валидирует данные, то высылает клиенту флаг, мол можно загружать MainActivity. В MainActivity опять заполняет какие-то поля и высылает их серверу. Сервер обрабатывает и высылает простой string. Вопрос: Как при получении последнего string вызвать PopUpActivity и вписать это string в TextView?

Если чего-то не хватает пишите, дополню.

Часть класса Client (метод, нас интересует последний else if):
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
public void run() throws Exception {
        Socket client = new Socket(ip, port);
        in = new BufferedReader(new InputStreamReader(client.getInputStream()));
        out = new PrintWriter(client.getOutputStream(), true);
        out.println(welcomeActivity.getCredentials());
        while (true) {
            final String line = in.readLine();
            if (line.equals("#GO#")) {
                System.out.println("#GO#");
                mainActivityIntent = new Intent(welcomeActivity,
                        MainActivity.class);
                welcomeActivity.startActivity(mainActivityIntent);
            } else if (line.equals("#CLOSE#")) {
                client.close();
                break;
            } else if (line.startsWith("#RESULTS")) {           
                Intent i = new Intent(MainActivity.getContext(), PopUpActivity.class);
                i.putExtra(line, line);
                i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
                MainActivity.getContext().startActivity(i);             
            }
        }
    }
Класс WelcomeActivity в котором вызывается метод (при нажатии на кнопку):

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
public void onClick(View v) {
        ip = ipText.getText().toString();
        port = Integer.parseInt(portText.getText().toString());
        login = loginText.getText().toString();
        password = passwordText.getText().toString();
        credentials = login + "#" + password + "#" + brand + "#" + device + "#"
                + hardware + "#" + manufacturer + "#" + product;
        client = new Client(ip, port, this);
        new Handler().start();
    }
 
    private class Handler extends Thread {
        public void run() {
            try {
                client.run();
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    }
И класс PopUpActivity, метод:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_pop_up);
        closeButton = (Button) findViewById(R.id.closeButton);
        testOutcome = (TextView) findViewById(R.id.textArea);
        closeButton.setOnClickListener(this);
 
        //
        Bundle extras = getIntent().getExtras();
        if (extras == null) {
            return;
        }
        String value = extras.getString(Intent.EXTRA_TEXT);
        if (value != null) {
            setText(value);
        }
    }
Проблема в том, что String (value) не выводится в TextView, открывается просто Activity которая пустая с кнопкой.


Это последняя версия которую я пробовал. До этого пробовал сделать AlertDialog, тоже не получилось.
Пробовал так:
1) В MainActivity создавал
Java
1
2
3
4
5
6
7
8
9
10
final static Context context;
....
public void onCreate() {
context = getBaseContext();
....
}
...
public static Context getContext() {
  return context;
}
2) И в клиенте обращался к нему через:
Java
1
MainActivity.getContext().getTextView().setText("text");
но он ругался на то что он не проинициализирован (nullpointerexception)

Тот вариант что на самом верху не выдает ошибки, он просто не показывает текст.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 19:25. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru