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

Загрузка XML с сервера, разбор и вставка в TextView - Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Android код html цыфра больше нуля другим цветом http://www.cyberforum.ru/android-dev/thread921972.html
код html цыфра больше нуля, светиться другим цветом
Android ошибка переменной Я новичок в программировании, недавно столкнулся с проблемой, которую никак не могу решить. В переменную типа float записывается число, введенное пользователем, но если ввести посторонний символ (буквы,запятые), то приложение вылетает, каким образом сделать так, что бы не вылетало. Очень надеюсь на Вашу помощь. http://www.cyberforum.ru/android-dev/thread921954.html
Android Разноцветный список цветов без текста
Добрый день! Необходимо создать список цветов с помощью массива нужных расцветок. Т.е. что-то вроде цветовой палитры. (Можно конечно вставить просто большую картику в Activity.) Но хотелось бы сделать именно программным путём список (ListView) у которого каждый элемент будет иметь свой цвет фона. 1. Возможно ли такое? Если да, то как? 2. Какой тип массива нужен и где создать сам...
Android Получить текст отображаемый приложением
Всем привет. У меня возникла задача: Мне нужно программно "увидеть" что отображает запущенное приложение на девайсе. Например я запускаю хром через adb или вручную неважно, загружаю страницу и мне нужно получить текст отображаемой страницы. т.е мне надо получить либо все виджиты хрома с отображаемой информацией на них (это было бы идеально), либо html ну или просто отображаемый текст. Может...
Android Достать определённый столбец из SQLite http://www.cyberforum.ru/android-dev/thread921866.html
Знаю про moveToFirst, moveToNext, а что делать если нужно достать данные из определенного столбца с именем допустим name, например, для того, чтобы сравнить значение этого столбца с определённой переменной? Большое спасибо. Добавлено через 13 минут Немного не так выразился, нужно получить не значение столбца, а поля. Можно вообще дать какое-то имя ячейке и по нему получать доступ к...
Android Смена компа-компилятора. Не хочет обновляться у пользователей Поставил пользователям программу. Затем сменил комп, перенес исходники. Но теперь не могу поставить новую версию пользователем. Выдаешь ошибку, мол другой продукт под тем же доменом уже установлен. А удалять и ставить заново нельзя - там данные. Как быть? подробнее

Показать сообщение отдельно
Sanu0074
 Аватар для Sanu0074
58 / 58 / 2
Регистрация: 14.06.2010
Сообщений: 1,187
Записей в блоге: 5

Загрузка XML с сервера, разбор и вставка в TextView - Android

12.07.2013, 12:39. Просмотров 589. Ответов 0
Метки (Все метки)

Приложение выполняется без ошибок, но результат не вставляется в TextView

Вызов XML-загрузчика:
Java
1
2
        AsyncDownloader downloader = new AsyncDownloader();
        downloader.execute();
Функция которая записывает результат, находится в классе Main:
Java
1
2
3
4
5
    public void rec(String data)
    {
         TextView tv = (TextView) findViewById(R.id.textView1);
         tv.setText(data);
    }
Парсер XML:
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
class AsyncDownloader extends AsyncTask<Object, String, Integer>{
 
    @Override
    protected Integer doInBackground(Object... params) {
        
        XmlPullParser recivedData = null;
        try {
            recivedData = tryDownloadingXmlData();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        int recordsFound = 0;
        try {
            recordsFound = tryParsingXmlData(recivedData);
        } catch (XmlPullParserException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        return recordsFound;
    }
    
    private XmlPullParser tryDownloadingXmlData() throws IOException {  
        try{
        URL xmlUrl = new URL("http://home-android.ru/android/main");
        XmlPullParser recivedData = XmlPullParserFactory.newInstance().newPullParser();
        recivedData.setInput(xmlUrl.openStream(),null);
        return recivedData;
        } 
        catch(XmlPullParserException e){ }
        catch(IOException e) { }
        return null;
    }
    
    
    private int tryParsingXmlData(XmlPullParser recivedData) throws XmlPullParserException, IOException {
        if(recivedData != null)
        {
            processRecivedData(recivedData);
        }
        return 0;
    }
 
 
 
    private void processRecivedData(XmlPullParser xmlData) throws XmlPullParserException, IOException {
        int eventType = -1;
        int recordsFound = 0;
        
        String lnk="";
        String data="";
        
        
        while(eventType!=XmlResourceParser.END_DOCUMENT)
        {
            String tagName=xmlData.getName();
            switch(eventType)
            {
            case XmlResourceParser.START_TAG:
                if(tagName.equals("lnk"))
                {
                    data+=xmlData.getText();
                }
            break;
            
            case XmlResourceParser.TEXT:
                data+=xmlData.getText();
            break;
            
            
            case XmlResourceParser.END_TAG:
                if(tagName.equals("lnk"))
                {
                    recordsFound++;
                    publishProgress(lnk,data);
                }
            break;
            }
            eventType=xmlData.next();
            
            if(recordsFound==0){
                publishProgress();
            }
        }
        
        
        
    }
 
    protected void onProgessUpdate(String... values){
        
        if(values.length==2)
        {
            String data = values[0];
            String lnk = values[1];
            Main main = new Main();
            main.rec(data+lnk);
        }
        
        super.onProgressUpdate(values);
    }
    
    
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 16:23. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru