Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/6: Рейтинг темы: голосов - 6, средняя оценка - 5.00
Jason
404 / 404 / 54
Регистрация: 25.12.2011
Сообщений: 907
1

Вызов метода из класса в таймере

20.07.2014, 14:03. Просмотров 1138. Ответов 6
Метки нет (Все метки)

Не могу получить титул веб страницы в таймере (ошибка).
Пример:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
    public class Main_Web extends WebView {
 
        String texst = "test_project";
        
        public Main_Web(Context context) {
            super(context);
            loadUrl("*.html");
            title_timer.schedule(new B(), 0, 1000);
        }
        
 
    }
 
    public class B extends TimerTask implements Runnable {
        
        @Override
        public void run() {
            Main_Web a = new Main_Web(getApplicationContext());
            String temp = a.getTitle();
        }
        
    }
0
Лучшие ответы (1)
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.07.2014, 14:03
Ответы с готовыми решениями:

Вызов метода из другого класса
Не могу разобраться, почему вылетает приложение, когда пытаюсь задать текст для TextView в...

Вызов метода из другого класса
Не получается вызвать метод из другого класса. Не ругайте, новичок. При запущенном приложении после...

Вызов нестатического метода из другого класса
Здравствуйте. Подскажите, как можно вызвать нестатистический метод из другого класса. 1.Этот...

Вызов метода в onCreate()
Здравствуйте.Пытаюсь загружать сохраненные данные при старте приложения и сохранять при выходе с...

Вызов метода по таймеру
Здравствуйте, подскажите пожалуйста, почему при повторном нажатии таймер не срабатывает? ...

6
NiRamz
211 / 211 / 33
Регистрация: 26.12.2010
Сообщений: 691
20.07.2014, 14:06 2
что за ошибку пишет в логи?
0
Jason
404 / 404 / 54
Регистрация: 25.12.2011
Сообщений: 907
20.07.2014, 14:32  [ТС] 3
07-20 11:32:07.924: E/AndroidRuntime(4349): FATAL EXCEPTION: Timer-0
07-20 11:32:07.924: E/AndroidRuntime(4349): java.lang.RuntimeException: Can't create handler inside thread that has not called Looper.prepare()
07-20 11:32:07.924: E/AndroidRuntime(4349): at android.os.Handler.<init>(Handler.java:121)
07-20 11:32:07.924: E/AndroidRuntime(4349): at android.webkit.WebViewClassic$PrivateHandler.<init>(WebViewClassic.java:7126)
07-20 11:32:07.924: E/AndroidRuntime(4349): at android.webkit.WebViewClassic.<init>(WebViewClassic.java:764)
07-20 11:32:07.924: E/AndroidRuntime(4349): at android.webkit.WebViewClassic$Factory.createWebView(WebViewClassic.java:1285)
07-20 11:32:07.924: E/AndroidRuntime(4349): at android.webkit.WebView.ensureProviderCreated(WebView.java:1783)
07-20 11:32:07.924: E/AndroidRuntime(4349): at android.webkit.WebView.setOverScrollMode(WebView.java:1836)
07-20 11:32:07.924: E/AndroidRuntime(4349): at android.view.View.<init>(View.java:3237)
07-20 11:32:07.924: E/AndroidRuntime(4349): at android.view.View.<init>(View.java:3295)
07-20 11:32:07.924: E/AndroidRuntime(4349): at android.view.ViewGroup.<init>(ViewGroup.java:427)
07-20 11:32:07.924: E/AndroidRuntime(4349): at android.widget.AbsoluteLayout.<init>(AbsoluteLayout.java:52)
07-20 11:32:07.924: E/AndroidRuntime(4349): at android.webkit.WebView.<init>(WebView.java:504)
07-20 11:32:07.924: E/AndroidRuntime(4349): at android.webkit.WebView.<init>(WebView.java:481)
07-20 11:32:07.924: E/AndroidRuntime(4349): at android.webkit.WebView.<init>(WebView.java:467)
07-20 11:32:07.924: E/AndroidRuntime(4349): at android.webkit.WebView.<init>(WebView.java:456)
07-20 11:32:07.924: E/AndroidRuntime(4349): at android.webkit.WebView.<init>(WebView.java:446)
07-20 11:32:07.924: E/AndroidRuntime(4349): at ru.example.app_web.MainActivity$Main_Web.<init>(MainActivity.java:75)
07-20 11:32:07.924: E/AndroidRuntime(4349): at ru.example.app_web.MainActivity$B.run(MainActivity.java:110)
07-20 11:32:07.924: E/AndroidRuntime(4349): at java.util.Timer$TimerImpl.run(Timer.java:284)
0
NiRamz
211 / 211 / 33
Регистрация: 26.12.2010
Сообщений: 691
20.07.2014, 14:34 4
Лучший ответ Сообщение было отмечено Jason как решение

Решение

вы пытаетесь выполнить UI операцию из вне.
http://stackoverflow.com/questions/3...epare-inside-a
1
Sony17
28 / 28 / 10
Регистрация: 24.05.2013
Сообщений: 157
20.07.2014, 14:37 5
Зачем реализовывать интерфейс Runnable, если TimerTask и так работает в демон-потоке?
0
Jason
404 / 404 / 54
Регистрация: 25.12.2011
Сообщений: 907
20.07.2014, 15:28  [ТС] 6
Цитата Сообщение от NiRamz Посмотреть сообщение
вы пытаетесь выполнить UI операцию из вне.
http://stackoverflow.com/questions/3...epare-inside-a
Я это понял. А можно простой пример того что по ссылке).
0
NiRamz
211 / 211 / 33
Регистрация: 26.12.2010
Сообщений: 691
20.07.2014, 16:25 7
по той ссылке есть и примеры
1
20.07.2014, 16:25
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.07.2014, 16:25

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Вызов метода из другого Activity
Здраствуйте. Помогите,пожалуйста, разобраться с несколькими вопросами: 1) Правильно ли, что...

Вызов java метода из native
Привет, чтот не пойму зачем у меня ошибка происходит... Значит что хочу и что происходит. Есть...

Вызов метода при прокрутке activity
Как обработать событие когда activity прокрутили в самый низ что бы вызвать какой нибудь метод?...


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

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

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