Google Android - это несложно

Добро пожаловать на форум сайта startandroid.ru
Текущее время: 15 дек 2017, 18:57

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 304 ]  На страницу 1, 2, 3, 4, 5 ... 16  След.
Автор Сообщение
 Заголовок сообщения: Урок 42. Список - ListView
СообщениеДобавлено: 15 дек 2011, 03:00 
Администратор
Аватар пользователя

Зарегистрирован: 07 янв 2012, 11:32
Сообщений: 1359
Благодарил (а): 0 раз.
Поблагодарили: 72 раз.
В этом уроке:

- используем ListView для построения списка

Click here to read this article!

_________________
Добро пожаловать на форум сайта StartAndroid
ИзображениеИзображение


Последний раз редактировалось damager82 02 май 2017, 23:32, всего редактировалось 4 раз(а).

Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Урок 42. Список - ListView
СообщениеДобавлено: 24 фев 2012, 16:24 

Зарегистрирован: 24 фев 2012, 16:08
Сообщений: 1
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Здравствуйте, подскажите, пожалуйста, как можно поменять цвет текста, в зависимости от значения этого текста?
То есть, например, в вашем уроке, имя "Даша" сделать красным, а все остальное зеленым...


...через 5 часов:

Почитал уроки, решил использовать SimpleAdapter...

п.с. Большое Человеческое Спасибо за материал!!!


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Урок 42. Список - ListView
СообщениеДобавлено: 03 мар 2012, 13:43 

Зарегистрирован: 21 фев 2012, 05:59
Сообщений: 8
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Возможно ли спроектировать интерфейс так, чтобы ПОД ListView в самом низу экрана можно было нарисовать что-нибудь еще, например, button.

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >

<ListView
android:id="@+id/listView1"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
</ListView>

<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="OK"
android:layout_weight="1" />
</LinearLayout>

При любом значении параметров layout_height у ListView и Button первый всегда занимает весь экран до низу, в итоге кнопку не видно.
Возможно ли сделать то, что мне нужно (естественно использования жестко заданной высоты ListView (а-ля layout_height="100 dp") не допускается)??


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Урок 42. Список - ListView
СообщениеДобавлено: 05 мар 2012, 10:28 
Администратор
Аватар пользователя

Зарегистрирован: 07 янв 2012, 11:32
Сообщений: 1359
Благодарил (а): 0 раз.
Поблагодарили: 72 раз.
Так вроде то, что нужно получается.

Код: [ Загрузить ] [ Скрыть ]
Using XML Syntax Highlighting
  1. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  2.    android:layout_width="match_parent"
  3.    android:layout_height="match_parent"
  4.    android:orientation="vertical" >
  5.  
  6.     <ListView
  7.        android:id="@+id/listView1"
  8.        android:layout_width="match_parent"
  9.        android:layout_height="wrap_content"
  10.        android:layout_weight="1" >
  11.     </ListView>
  12.  
  13.     <Button
  14.        android:layout_width="wrap_content"
  15.        android:layout_height="wrap_content"
  16.        android:layout_gravity="center_horizontal"
  17.        android:text="OK" />
  18.  
  19. </LinearLayout>
  20.  

_________________
Добро пожаловать на форум сайта StartAndroid
ИзображениеИзображение


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Урок 42. Список - ListView
СообщениеДобавлено: 06 мар 2012, 07:21 

Зарегистрирован: 21 фев 2012, 05:59
Сообщений: 8
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
damager82 писал(а):
Так вроде то, что нужно получается.

таки да, после того как у списка указываешь вес = 1 получается то, что нужно, не очевидно однако.
спасибо за помощь


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Урок 42. Список - ListView
СообщениеДобавлено: 26 июн 2012, 14:02 

Зарегистрирован: 01 июн 2012, 19:41
Сообщений: 1
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
День добрый!

Пробую открыть двойным кликом simple_list_item_1.xml

Выдает такую ошибку:
Could not open the editor: Android XML Editor cannot process this input.


P.S. Спасибо за уроки.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Урок 42. Список - ListView
СообщениеДобавлено: 29 июн 2012, 15:22 
Администратор
Аватар пользователя

Зарегистрирован: 07 янв 2012, 11:32
Сообщений: 1359
Благодарил (а): 0 раз.
Поблагодарили: 72 раз.
Volk65 писал(а):
Пробую открыть двойным кликом simple_list_item_1.xml

Выдает такую ошибку:
Could not open the editor: Android XML Editor cannot process this input.


Похоже, что это баг, который пришел с какой-то новой версией Eclipse или ADT. У меня сейчас тоже не открывается и выдает такую ошибку.
Если очень надо, то можно этот файл через поиск найти в папке android-sdk-windows/platforms

_________________
Добро пожаловать на форум сайта StartAndroid
ИзображениеИзображение


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Урок 42. Список - ListView
СообщениеДобавлено: 29 июн 2012, 15:22 
Администратор
Аватар пользователя

Зарегистрирован: 07 янв 2012, 11:32
Сообщений: 1359
Благодарил (а): 0 раз.
Поблагодарили: 72 раз.
damager82 писал(а):
Volk65 писал(а):
Пробую открыть двойным кликом simple_list_item_1.xml

Выдает такую ошибку:
Could not open the editor: Android XML Editor cannot process this input.


Похоже, что это баг, который пришел с какой-то новой версией Eclipse или ADT. У меня сейчас тоже не открывается и выдает такую ошибку.
Если очень надо, то можно этот файл через поиск найти в файловой системе компа, в папке android-sdk-windows/platforms

_________________
Добро пожаловать на форум сайта StartAndroid
ИзображениеИзображение


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Урок 42. Список - ListView
СообщениеДобавлено: 29 июн 2012, 17:05 

Зарегистрирован: 14 май 2012, 16:18
Сообщений: 372
Благодарил (а): 0 раз.
Поблагодарили: 6 раз.
damager82 писал(а):

Похоже, что это баг, который пришел с какой-то новой версией Eclipse или ADT. У меня сейчас тоже не открывается и выдает такую ошибку.
Если очень надо, то можно этот файл через поиск найти в папке android-sdk-windows/platforms


Это скорее недоработка чем баг, там не текстовый xml , а двоичный, так же как и вся библиотека android.jar.
Тут нужен специальный плагин для эклипса чтобы он умел читать двоичные xml.
Например, вот этот https://adt-addons.googlecode.com/svn/t ... it.update/


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Урок 42. Список - ListView
СообщениеДобавлено: 11 июл 2012, 13:30 

Зарегистрирован: 28 июн 2012, 16:51
Сообщений: 6
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
яфпкк писал(а):
damager82 писал(а):
Так вроде то, что нужно получается.

таки да, после того как у списка указываешь вес = 1 получается то, что нужно, не очевидно однако.
спасибо за помощь

Здравствуйте.
По своей лености слепил этот и предыдущий урок в одном проекте(создал несколько функций и просто вызывал их по очереди)
main.xml стал выглядеть так
Код: [ Загрузить ] [ Скрыть ]
Using XML Syntax Highlighting
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <LinearLayout
  3.          xmlns:android="http://schemas.android.com/apk/res/android"
  4.          android:layout_width="fill_parent"
  5.          android:layout_height="fill_parent"
  6.          android:orientation="vertical">
  7.         <TextView
  8.                  android:layout_width="wrap_content"
  9.                  android:layout_height="wrap_content"
  10.                  android:text="Staff list"
  11.                  android:layout_gravity="center_horizontal">
  12.         </TextView>
  13.         <ScrollView
  14.                  android:layout_width="fill_parent"
  15.                  android:layout_height="fill_parent"
  16.                  android:id="@+id/scroll">
  17.                 <LinearLayout
  18.                          android:id="@+id/linLayout"
  19.                          android:layout_width="fill_parent"
  20.                          android:layout_height="fill_parent"
  21.                          android:orientation="vertical">
  22.                 </LinearLayout>
  23.         </ScrollView>
  24.        
  25.         <ListView
  26.                  android:id="@+id/lvMain"
  27.                  android:layout_width="match_parent"
  28.                  android:layout_height="wrap_content">
  29.         </ListView>
  30. </LinearLayout>
  31.  

В итоге, если вызывал функции из урока 42, то видел пустой экран.
Установка android:layout_weight="1" для ScrollView помогла, но пришлось попариться(пока на форум не залез)
Действительно не очень очевыдный нюанс.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Урок 42. Список - ListView
СообщениеДобавлено: 15 июл 2012, 07:20 

Зарегистрирован: 17 июн 2012, 09:43
Сообщений: 2
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
подскажите, пожалуйста, а как правильно подключить данный плагин? Я его установил для эклипса, но ничего не изменилось. Как выдавалась ошибка при попытке открыть файл XML, так и выдается.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Урок 42. Список - ListView
СообщениеДобавлено: 15 июл 2012, 11:01 

Зарегистрирован: 14 май 2012, 16:18
Сообщений: 372
Благодарил (а): 0 раз.
Поблагодарили: 6 раз.
diron писал(а):
подскажите, пожалуйста, а как правильно подключить данный плагин? Я его установил для эклипса, но ничего не изменилось. Как выдавалась ошибка при попытке открыть файл XML, так и выдается.

Window->General->Editors->File Associations ставим для *.xml двоичный редактор как Default


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Урок 42. Список - ListView
СообщениеДобавлено: 03 авг 2012, 17:03 

Зарегистрирован: 30 июл 2012, 13:32
Сообщений: 25
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
можно ли содержимое тхт файла вывести в списке ListView?


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Урок 42. Список - ListView
СообщениеДобавлено: 03 авг 2012, 17:23 

Зарегистрирован: 02 авг 2012, 17:23
Сообщений: 21
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
3Gern писал(а):
можно ли содержимое тхт файла вывести в списке ListView?

Конечно, в Android есть стандартные классы чтения/записи потоков(InputStreamReader например), ими можно легко считать текстовый файл, главное потом его правильно распарсить и выделить элементы и собрать их в коллекцию, а дальше уже заполнить ListView


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Урок 42. Список - ListView
СообщениеДобавлено: 03 авг 2012, 18:15 

Зарегистрирован: 30 июл 2012, 13:32
Сообщений: 25
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
k.chaiko со считыванием все получилось, а вот про распарсит не понял и не знаю как сделать, можете примеры с ней дать или помочь с кодом? ниже код для чтения файла
Код: [ Загрузить ] [ Скрыть ]
Using Java Syntax Highlighting
  1. ListView spisok = (ListView)findViewById(R.id.listView1);
  2.         String myText = null;
  3.        
  4.         InputStream inputStream = getResources().openRawResource(R.raw.qwer);
  5.         ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
  6.         int i;
  7.        
  8.         try {
  9.                 i = inputStream.read();
  10.         while (i != -1) {
  11.                 byteArrayOutputStream.write(i);  
  12.                 i = inputStream.read();  
  13.         }
  14.         inputStream.close();
  15.         myText = byteArrayOutputStream.toString("UTF-8");
  16.        
  17.         }
  18.         catch (IOException e)
  19.         {}


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Урок 42. Список - ListView
СообщениеДобавлено: 03 авг 2012, 18:22 

Зарегистрирован: 02 авг 2012, 17:23
Сообщений: 21
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
3Gern писал(а):
k.chaiko со считыванием все получилось, а вот про распарсит не понял и не знаю как сделать, можете примеры с ней дать или помочь с кодом? ниже код для чтения файла

Тогда напишите как у вас в txt расположены элементы списка, я думаю каждый элемент просто с новой строки, сейчас напишу примерно, как сделать..
Код: [ Загрузить ] [ Скрыть ]
Using Java Syntax Highlighting
  1. public List<String> createListFromFile(int idFile) {
  2.         BufferedReader inputStream = null;
  3.         try {
  4.             inputStream = new BufferedReader(new InputStreamReader(getResources().openRawResource(idFile)));
  5.             List<String> list = new ArrayList<String>();
  6.             String strLine;
  7.             while ((strLine = inputStream.readLine()) != null) {
  8.                 list.add(strLine);
  9.             }
  10.             return list;
  11.         } catch (FileNotFoundException e) {
  12.             e.printStackTrace();
  13.         } catch (IOException e) {
  14.             e.printStackTrace();
  15.         }
  16.         return null;
  17.     }

P.S. вот накидал метод, возвращает вам коллекцию, из вашего текст файла, в метод передавайте id файла, и всё, ну и List<String> заполняете уже ListView..
Метод readLine считывает файл построчно, если элементы идут к примеру через запятую, то парсить сложнее, мой метод работает если элементы каждый раз с новой строки..


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Урок 42. Список - ListView
СообщениеДобавлено: 03 авг 2012, 19:24 

Зарегистрирован: 30 июл 2012, 13:32
Сообщений: 25
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
k.chaiko писал(а):
P.S. вот накидал метод, возвращает вам коллекцию, из вашего текст файла, в метод передавайте id файла, и всё, ну и List<String> заполняете уже ListView..
Метод readLine считывает файл построчно, если элементы идут к примеру через запятую, то парсить сложнее, мой метод работает если элементы каждый раз с новой строки..

спасибо вам, попробую все это дело вместе соединить.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Урок 42. Список - ListView
СообщениеДобавлено: 03 авг 2012, 19:39 

Зарегистрирован: 30 июл 2012, 13:32
Сообщений: 25
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
k.chaiko
все получилось, огромное вас спс!!!


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Урок 42. Список - ListView
СообщениеДобавлено: 15 авг 2012, 09:42 

Зарегистрирован: 09 авг 2012, 13:30
Сообщений: 20
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
есть файл разметки, целью которого есть вывести список, состоящий из 3-х TextEdit с возможностью СинглСелекта.
Код: [ Загрузить ] [ Скрыть ]
Using Java Syntax Highlighting
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  3.     android:layout_width="wrap_content"
  4.     android:layout_height="match_parent"
  5.     android:orientation="horizontal" >
  6.  
  7.     <CheckedTextView
  8.     android:id="@android:id/text1"
  9.     android:layout_width="wrap_content"
  10.     android:layout_height="?android:attr/listPreferredItemHeight"
  11.     android:textAppearance="?android:attr/textAppearanceLarge"
  12.     android:gravity="center"
  13.     android:checkMark="?android:attr/textCheckMark"
  14.     android:text="CheckedTextView"
  15.     android:paddingLeft="6dip"
  16.     android:paddingRight="6dip"
  17.    
  18. />
  19.     <LinearLayout
  20.         android:id="@+id/linearLayout1"
  21.         android:layout_width="wrap_content"
  22.         android:layout_height="wrap_content"
  23.         android:orientation="vertical" >
  24.  
  25.         <TextView
  26.             android:id="@+id/Text2"
  27.             android:layout_width="wrap_content"
  28.             android:layout_height="wrap_content"
  29.             android:layout_gravity="left"
  30.             android:layout_marginRight="20dp"
  31.             android:text="TextView" >
  32.         </TextView>
  33.  
  34.         <TextView
  35.             android:id="@+id/Text3"
  36.             android:layout_width="wrap_content"
  37.             android:layout_height="wrap_content"
  38.             android:layout_gravity="left"
  39.             android:layout_marginRight="20dp"
  40.             android:text="TextView"
  41.         />
  42.     </LinearLayout>
  43.  
  44.    </LinearLayout>
  45.  
  46.  

Если поглядеть визуальное представление этого файла действительно отображается 1 CheckedTextView и рядом 2 TextView.
Если запустить приложение, то на эмуляторе отображается ТОЛЬКО CheckedTextView. TextView не видно.
Правда в качесте адаптера используется
Код: [ Загрузить ] [ Скрыть ]
Using Java Syntax Highlighting
  1. adapt = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_checked, catnames_jar);
  2.  

если при создании адаптера использовать мой файл
adapt = new ArrayAdapter<String>(this,R.layout.list_item, catnames_jar); вываливается ошибка 08-15 07:01:16.763: E/AndroidRuntime(1370): java.lang.IllegalStateException: ArrayAdapter requires the resource ID to be a TextView
Кто-нить сталкивался с таким. М.б. есть ссылки на примеры посторения сложных ListView?
И еще вопрос. Можно ли расположить "чек" слева, а не справа?


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Урок 42. Список - ListView
СообщениеДобавлено: 15 авг 2012, 10:24 
Аватар пользователя

Зарегистрирован: 26 июн 2012, 13:22
Сообщений: 3422
Откуда: UA
Благодарил (а): 11 раз.
Поблагодарили: 244 раз.
на счёт сложности то ничем они не отличаются, вся магия происходит в адаптере, что ты там накодишь то и будет отображаться, так что у меня предчувствие что там не всё впорядке. На счёт чекбокса, хз как, разве что есть два варианта: 1) выбрать чекбокс а не чек CheckedTextView ; 2) если первый вариант не подходит то попробовать реализовать кастомный CheckedTextView, а там все карты в руки.

_________________
R.id.team
Политика на форуме запрещена


Вернуться наверх
 Профиль  
 
Показать сообщения за:  Сортировать по:  
Начать новую тему Ответить на тему  [ Сообщений: 304 ]  На страницу 1, 2, 3, 4, 5 ... 16  След.

Часовой пояс: UTC + 3 часа


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB