Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Cuda1
18 / 18 / 7
Регистрация: 08.10.2014
Сообщений: 98
1

Фон для списка на CustomAdapter

03.06.2015, 15:00. Просмотров 279. Ответов 10
Метки нет (Все метки)

Здравствуйте. У меня есть свой адаптер из которого заполняется список:
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
public class TargetListActivity extends ListActivity {
    final static String STRING ="STRING";
    final static String IMAGE = "IMAGE";
    public Integer[] mTargetArray = new Integer[]{R.string.Bird,R.string.Trash,R.string.Sun,
    R.string.Plain,R.string.IceCream,R.string.Home,R.string.Dig,R.string.Cat};
    public Integer[]mImageArray = new Integer[] {R.mipmap.bird,
            R.mipmap.trash,
            R.mipmap.sun,
            R.mipmap.plain,
            R.mipmap.ice_cream,
            R.mipmap.home,
            R.mipmap.dig,
            R.mipmap.cat};
    private TargetAdapter mAdapter;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        ListView listView = (ListView) findViewById(R.id.listView);
        mAdapter = new TargetAdapter(this);
        setListAdapter(mAdapter);
    }
 
 
    @Override
    protected void onListItemClick(ListView l, View v, int position, long id) {
    }
    public class TargetAdapter extends BaseAdapter{
        private LayoutInflater mLayoutInflater;
        public TargetAdapter(Context context){
            mLayoutInflater = LayoutInflater.from(context);
        }
 
        @Override
        public int getCount() {
            return mTargetArray.length;
        }
 
        @Override
        public Object getItem(int position) {
            return position;
        }
 
        @Override
        public long getItemId(int position) {
            return position;
        }
 
        public int getString(int position){
            return mTargetArray[position];
        }
 
        public int getImage (int position){
            return mImageArray[position];
        }
 
        @Override
        public View getView(int position, View convertView, ViewGroup parent) {
            if (convertView==null) convertView = mLayoutInflater.inflate(R.layout.activity_target_list,null);
 
            ImageView targetIcon = (ImageView)convertView.findViewById(R.id.imageViewIcon);
            targetIcon.setImageResource(mImageArray[position]);
            TextView targetName = (TextView)convertView.findViewById(R.id.textViewTargetName);
            targetName.setText(mTargetArray[position]);
            return convertView;
        }
    }
}
А вот сама разметка для item
XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="60dp"
    android:orientation="horizontal">
 
    <ImageView
        android:id="@+id/imageViewIcon"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />
 
    <TextView
        android:id="@+id/textViewTargetName"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textSize="20sp"
        android:textStyle="bold"
        android:singleLine="false"
        android:layout_gravity="center"
        android:textColor="@android:color/black" />
 
</LinearLayout>
Подскажите, пожалуйста, как можно задать фон у всего списка? Как я понимаю моя разметка предусматривает установку фона только для элементов. Можно попробовать вставить вместо всего listview и задать ему фон, но тогда я этот listview не смогу прикрутить к моему адаптеру.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.06.2015, 15:00
Ответы с готовыми решениями:

EditText Dialog in CustomAdapter Android
При нажатии на определенную кнопку, должен выводится диалог с полем EditText и...

Фон jpg для layout
Привет. У меня RelativeLayout, на нем несколько вьюшек, пользователь может...

Разный фон кнопки для разных состояний
Что-то не могу найти, как сделать такую простую вещь, как установка разного...

Как подготовить растровую картинку для установки на фон LinearLayout
Есть картинка разрешением 3700*5500. Хочу поставить на фон LinearLayout-а. ...

Изменил фон для Custom ListView не работает подсветка при нажатии
Для каждого четного Custom ListView устанавливаю цвет фона : if ((position %...

10
androbro
343 / 303 / 68
Регистрация: 17.10.2014
Сообщений: 898
03.06.2015, 15:13 2
Цитата Сообщение от Cuda1 Посмотреть сообщение
Можно попробовать вставить вместо всего listview и задать ему фон, но тогда я этот listview не смогу прикрутить к моему адаптеру.
а что разве установка bg у ListView в xml не помогает?
0
Cuda1
18 / 18 / 7
Регистрация: 08.10.2014
Сообщений: 98
03.06.2015, 15:16  [ТС] 3
androbro, ну так я же написал, что тогда не смогу к ListView прицепить свой адаптер.

Странно, долго думал, но как написал сюда сразу пришло решение, хоть и не совсем изящное. Задал тему всей активности и сменил фон в ней. и заработало)
XML
1
2
3
 <style name="CustomTheme" parent="AppTheme">
        <item name="android:windowBackground">@mipmap/background</item>
    </style>
0
androbro
343 / 303 / 68
Регистрация: 17.10.2014
Сообщений: 898
03.06.2015, 15:22 4
Цитата Сообщение от Cuda1 Посмотреть сообщение
ну так я же написал, что тогда не смогу к ListView прицепить свой адаптер.
эт из каких это соображений???
0
Cuda1
18 / 18 / 7
Регистрация: 08.10.2014
Сообщений: 98
03.06.2015, 15:32  [ТС] 5
androbro, а как можно? listview.setAdapter(mAdapter) - не сработает. а по другому я не знаю как.
0
androbro
343 / 303 / 68
Регистрация: 17.10.2014
Сообщений: 898
03.06.2015, 15:35 6
Cuda1,
Цитата Сообщение от Cuda1 Посмотреть сообщение
а как можно? listview.setAdapter(mAdapter) - не сработает
а по вашему если установить bg через setBackgroundResource(), то установить адаптер далее нет возможности?
где тут связь?
0
Cuda1
18 / 18 / 7
Регистрация: 08.10.2014
Сообщений: 98
03.06.2015, 15:39  [ТС] 7
androbro,
Цитата Сообщение от androbro Посмотреть сообщение
а по вашему если установить bg через setBackgroundResource(), то установить адаптер далее нет возможности?
где тут связь?
правильно, связи тут нет, и я такого не говорил) я сказал что не знаю как поставить созданный адаптер на элемент ListView.
0
androbro
343 / 303 / 68
Регистрация: 17.10.2014
Сообщений: 898
03.06.2015, 15:53 8
Цитата Сообщение от Cuda1 Посмотреть сообщение
я сказал что не знаю как поставить созданный адаптер на элемент ListView.

адаптер ставится на весь ListView а не на его конкретный элемент
0
Cuda1
18 / 18 / 7
Регистрация: 08.10.2014
Сообщений: 98
03.06.2015, 16:52  [ТС] 9
androbro, когда я говорил элемент listview я имел ввиду сам view. короч ладно, разговор ниочем, проблему решил. всем спасибо)
0
androbro
343 / 303 / 68
Регистрация: 17.10.2014
Сообщений: 898
03.06.2015, 17:04 10
Цитата Сообщение от Cuda1 Посмотреть сообщение
когда я говорил элемент listview я имел ввиду сам view.
ааа, ну бывает)))))
удачного Вам девелопа с такой терминологией
0
Cuda1
18 / 18 / 7
Регистрация: 08.10.2014
Сообщений: 98
03.06.2015, 17:16  [ТС] 11
androbro, да терминология как терминология, здесь немного другое...
0
03.06.2015, 17:16
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.06.2015, 17:16

Фон для номера нумерованного списка
Добрый день! собственно вопрос в названии темы, можно ли установить фон в виде...

Не показывается фон списка ul
Код HTML &lt;ul id=&quot;menu&quot;&gt; &lt;li&gt;&lt;a href=&quot;index.html&quot;&gt;О компании&lt;/a&gt;&lt;/li&gt;...

Как задать фон развертывающегося списка?
Имеется вот такой код: &lt;select name = &quot;day&quot; style=&quot;font-weight:bold;...


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

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

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