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

Как обновить список RecyclerView после добавления item? - Программирование Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Программирование Android Работа в фоне. Отобразить картинку по url http://www.cyberforum.ru/android-dev/thread1670439.html
Добрый вечер! Не получается решить две ситуации, уже обгуглился, голова пухнет... 1)есть маяк Beacon, когда я запускаю приложение мне приходит уведомление, если маяк в зоне видимости. Мне надо...
Программирование Android Как сохранить фокус в пределах одной View Требуется сделать управление компонентом с помощью стрелок клавиатуры или D-Pad джойстиком, подключенным к устройству. Управляться будет компонент, написанный на Canvas. Проблема в том, что при... http://www.cyberforum.ru/android-dev/thread1670355.html
Программирование Android Парсинг json
Здравствуйте! Имеется такой json код: { "data": }И я его обрабатываю так: JSONArray urls = json.getJSONArray("data"); Тогда, как мне обработать такой json: Жду ответа! Добавлено через 2...
Установка работы GitHub и git на Windows 7 ? Программирование Android
Можно где то найти по шагавшую инструкцию ПОДРОБНУЮ по установке и работе программы git? И как связать GitHab / git / и AndroidStudio -если можно?
Программирование Android Узнать размер view http://www.cyberforum.ru/android-dev/thread1670060.html
Как узнать размер view, если он лежит в layout, и обрезается им (размер view больше, чем размер layout). view.getHeight и view.getMeasuredHeight возвращают размер только видимой области (т.е. размер...
Программирование Android Скроллинг внутри layout в 2х направлениях Нужно реализовать скроллинг как по вертикали, так и по горизонтали, но layout, который должен перемещаться внутри другого, просто дергается: @Override public boolean onTouchEvent(MotionEvent... подробнее

Показать сообщение отдельно
disx
22 / 22 / 0
Регистрация: 26.02.2014
Сообщений: 546
Записей в блоге: 1
26.02.2016, 11:54  [ТС]
CoolMind, тяжело, вот:

Adapter:
Кликните здесь для просмотра всего текста
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
package com.dis.babygpspro;
 
/**
 * Created by Nata on 25.02.2016.
 */
 
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
 
import java.util.List;
 
public class RecyclerViewAdapter extends RecyclerView.Adapter<RecyclerViewAdapter.ViewHolder> {
 
    private List<ItemData> recordsNUM;
 
    public RecyclerViewAdapter(List<ItemData> recordsNUM) {
        this.recordsNUM = recordsNUM;
 
    }
    /**
     * Создание новых View и ViewHolder элемента списка, которые впоследствии могут переиспользоваться.
     */
    @Override
    public ViewHolder onCreateViewHolder(ViewGroup viewGroup, int i) {
        View v = LayoutInflater.from(viewGroup.getContext()).inflate(R.layout.item_last_contacts, viewGroup, false);
        return new ViewHolder(v);
    }
 
    /**
     * Заполнение виджетов View данными из элемента списка с номером i
     */
    @Override
    public void onBindViewHolder(ViewHolder viewHolder, int i) {
        ItemData record = recordsNUM.get(i);
 
        viewHolder.textNumber.setText(record.getTitleNumber());
        viewHolder.textName.setText(record.getTitleName());
 
    }
 
    @Override
    public int getItemCount() {
        return recordsNUM.size();
    }
 
    /**
     * Реализация класса ViewHolder, хранящего ссылки на виджеты.
     */
    class ViewHolder extends RecyclerView.ViewHolder {
        private TextView textNumber;
        private TextView textName;
        TextView textDevider;
 
        public ViewHolder(View itemView) {
            super(itemView);
            textNumber = (TextView) itemView.findViewById(R.id.textNumber);
            textName = (TextView) itemView.findViewById(R.id.textName);
            textDevider = (TextView) itemView.findViewById(R.id.textviewDevider);
        }
    }
 
}


Dialog:
Кликните здесь для просмотра всего текста
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
@Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {
     
        View view = inflater.inflate(R.layout.dialog_send_sms, container, false);
        getDialog().getWindow().requestFeature(Window.FEATURE_NO_TITLE);
 
        db = new DB(getActivity());
        db.open();
        cursor = db.getAllDataSort();
 
        recyclerView = (RecyclerView)view.findViewById(R.id.recycler_LastCont);
 
        final List<ItemData> items = getItemsFromCursor(cursor);
        cursor.close();
        
        //data = items.get(i);
       // numberCon = data.getTitleNumber();
       // name = data.getTitleName();
 
        adapter = new RecyclerViewAdapter(items);
 
        recyclerView.setAdapter(adapter);
        recyclerView.setLayoutManager(new LinearLayoutManager(getActivity()));
        recyclerView.setItemAnimator(new DefaultItemAnimator());
 
private void pickContact() {
        Intent pickContactIntent = new Intent(Intent.ACTION_PICK, Uri.parse("content://contacts"));
        pickContactIntent.setType(ContactsContract.CommonDataKinds.Phone.CONTENT_TYPE); // Show user only contacts w/ phone numbers
        startActivityForResult(pickContactIntent, PICK_CONTACT_REQUEST);
 
      //  chooseNumber.setText(String.valueOf(pickContactIntent));
    }
 
    @Override
    public void onActivityResult(int requestCode, int resultCode, Intent data) {
        // Check which request it is that we're responding to
        if (requestCode == PICK_CONTACT_REQUEST) {
            // Make sure the request was successful
            if (resultCode == getActivity().RESULT_OK) {
                // Get the URI that points to the selected contact
                Uri contactUri = data.getData();
                // We only need the NUMBER column, because there will be only one row in the result
                String[] projection = {ContactsContract.CommonDataKinds.Phone.NUMBER, ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME};
               
                Cursor cursor = getActivity().getContentResolver()
                        .query(contactUri, projection, null, null, null);
                cursor.moveToFirst();
 
                //String nameContact = null;
                // Retrieve the phone number from the NUMBER column
                int column = cursor.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER);
                int column2 = cursor.getColumnIndex(ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME);
                number = cursor.getString(column);
                nameContact =  cursor.getString(column2);
 
                chooseNumber.setText(number);
                cursor.close();
                // добавляем запись в базу
                controlRec();
 
                // Do something with the phone number...
            }
        }
    }
    public static List<ItemData> getItemsFromCursor(Cursor cursor){
 
        List<ItemData> items = new ArrayList<>();
        while(cursor.moveToNext()){
 
            String phone = cursor.getString(cursor.getColumnIndex("number"));
            String name = cursor.getString(cursor.getColumnIndex("name"));
 
            items.add(new ItemData(phone, name));
 
        }
 
        return items;
 
    }


items.clear(); не понимаю где это сделать?
и правильно ли смотрю?
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru