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

Как вывести объекты списком? - Программирование Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Программирование Android Где лучше хранить рисунки в приложении? http://www.cyberforum.ru/android-dev/thread1763743.html
Доброго дня. В моём приложении будет пакет рисунков. Куда их лучше положить, в res\drawable или в assets, с прицелом в дальнейшем на то что пользователь будет добавлять свои рисунки? Предустановленные рисунки и те то будут сделаны потом (сфотографированы на камеру например) одной природы, другими словами это "обложки" неких объектов. И соответственно хотелось что бы все рисунки располагались в...
Программирование Android Загрузка картинок в определенное место текста WebView Дан текст в WebView, нужно в определенных местах текста вставлять картинки Добавлено через 42 минуты Текст загружается в WebView из txt http://www.cyberforum.ru/android-dev/thread1763688.html
Программирование Android N910p qcn для прошивки note 4
Если есть у кого, скиньте епожалуйста.
Музыка в android Программирование Android
Здравствуйте! Подскажите, пожалуйста, как сделать так, что бы музыка играла пока открыто приложение. В нем много активностей и надо что бы музыка не перезапускалась при переходе между ними. Если допустим добавить службу с MediaPlayer , которая начинает и останавливает воспроизведение музыки, то где ее потом вызывать?
Программирование Android Показать/скрыть экранную клавиатуру http://www.cyberforum.ru/android-dev/thread1763540.html
Есть родительский Activity, в нем пользователь переключается между 4мя фрагментами. В одном фрагменте один EditText и Button. как сделать что бы при переходе в него показывалась экранная клавиатура а при выходе - соответственно убиралась и не светилась на остальных фрагментах? etNumber = (EditText) fragmentView.findViewById(R.id.dialingnumber); etNumber.requestFocus(); imm =...
Программирование Android Интерфейс приложения Android Добрый день подскажите, буквально 2 вопроса. 1) С помощью каких средств можно реализовать данный интерфейс приложения см рис, то есть после съёмки нужно отметить привью отснятого фото и видео какие файлы нужно отправить. 2) Как организовать отправку я так понимаю что данный код нужно будет обновлять. try { client = new Socket("192.168.1.138", 60000); ... подробнее

Показать сообщение отдельно
NanoDroid
0 / 0 / 1
Регистрация: 16.06.2016
Сообщений: 12
20.06.2016, 16:14     Как вывести объекты списком?
Что-то Вы намудрили в своем XML Вам нужен только один RecyclerView.

Упростим главный layout и назовем my_activity.xml:
Кликните здесь для просмотра всего текста
XML
1
2
3
4
5
6
7
8
9
10
11
12
13
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:paddingTop="5dp"
    android:paddingBottom="5dp">
 
    <android.support.v7.widget.RecyclerView
        android:layout_width="match_parent"
        android:layout_height="70dp"
        android:id="@+id/recycleRaspView" />
<LinearLayout />


Вот этот кусок надо вытащить в отдельный файл (назовем my_item.xml):
Кликните здесь для просмотра всего текста
XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="center_horizontal"
        android:gravity="center_horizontal">
 
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            <!--android:text="@string/thursday" Не нужно. Текст будем ставить программно -->
            android:textSize="10pt"
            android:layout_gravity="top|center_horizontal"
            android:textColor="@color/colorBlack"
            android:gravity="center_horizontal" />
</LinearLayout>


Строки я бы положил в <string-array /> (создается Android resource file в папку values):
Кликните здесь для просмотра всего текста
XML
1
2
3
4
5
6
7
8
9
10
11
12
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string-array name="daysOfWeek">
    <item>Monday</item>
    <item>Tuesday</item>
    <item>Wednesday</item>
    <item>Thursday</item>
    <item>Friday</item>
    <item>Saturday</item>
    <item>Sunday</item>
</string-array />
</resources>


Примерно такой код в Активити (немного переделал гугловский пример под ваши нужды):
Кликните здесь для просмотра всего текста
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
public class MyActivity extends Activity {
    private RecyclerView mRecyclerView;
    private RecyclerView.Adapter mAdapter;
    private RecyclerView.LayoutManager mLayoutManager;
 
    private String[] myDataset;
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.my_activity);
 
        myDataset = getResourses().getStringArray(R.array.daysOfWeek);
 
        mRecyclerView = (RecyclerView) findViewById(R.id.recyclerRaspView);
 
        // use this setting to improve performance if you know that changes
        // in content do not change the layout size of the RecyclerView
        mRecyclerView.setHasFixedSize(true);
 
        // use a linear layout manager
        mLayoutManager = new LinearLayoutManager(this);
        mRecyclerView.setLayoutManager(mLayoutManager);
 
        // specify an adapter (see also next example)
        mAdapter = new MyAdapter(myDataset);
        mRecyclerView.setAdapter(mAdapter);
    }
}
 
public class MyAdapter extends RecyclerView.Adapter<MyAdapter.ViewHolder> {
    private String[] mDataset;
 
    // Provide a reference to the views for each data item
    // Complex data items may need more than one view per item, and
    // you provide access to all the views for a data item in a view holder
    public static class ViewHolder extends RecyclerView.ViewHolder {
        // each data item is just a string in this case
        public TextView mTextView;
        public ViewHolder(TextView v) {
            super(v);
            mTextView = v;
        }
    }
 
    // Provide a suitable constructor (depends on the kind of dataset)
    public MyAdapter(String[] _myDataset) {
        mDataset = _myDataset;
    }
 
    // Create new views (invoked by the layout manager)
    @Override
    public MyAdapter.ViewHolder onCreateViewHolder(ViewGroup parent,
                                                   int viewType) {
        // create a new view
        View v = LayoutInflater.from(parent.getContext())
                               .inflate(R.layout.my_item, parent, false);
        // set the view's size, margins, paddings and layout parameters
        //...
        ViewHolder vh = new ViewHolder((TextView ) v);
        return vh;
    }
 
    // Replace the contents of a view (invoked by the layout manager)
    @Override
    public void onBindViewHolder(ViewHolder holder, int position) {
        // - get element from your dataset at this position
        // - replace the contents of the view with that element
        holder.mTextView.setText(mDataset[position]);
 
    }
 
    // Return the size of your dataset (invoked by the layout manager)
    @Override
    public int getItemCount() {
        return mDataset.length;
    }
}


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