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

ListView, База данных и SimpleCursorAdapter - onItemClick срабатывает только после добавления данных - Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Android Работа с TextToSpeech http://www.cyberforum.ru/android-dev/thread1302224.html
Доброго времени суток! Есть тут кто мне поможет! TTS имеет свои локальные языки для работы, а с другими языками как быть? Посоветуйте, помогите кто знает!
Android Автозапуск BroadcastReceiver после перезагрузки В общем в приложении есть два BroadcastReceiver'а 1-ый отвечает за автозапуск приложения после перезагрузки телефона, 2-ой за получение СМС сообщения. Так вот после того как телефон перезагрузить и приложение автоматически запуститься 2-ой BroadcastReceiver не работает, т.е. смс не перехватывает. Начинает работать только после перезапуска самого приложения. http://www.cyberforum.ru/android-dev/thread1302216.html
Приём СМС Android
Здравствуйте! Уже не первый день пытаюсь прочитать своим приложением входящее сообщение, но безрезультатно. На гаджете вообще программа никак не реагирует, а эмулятор вылетает со словами "Unfortunately, sms has stopped" Вроде бы всё делал по видео: http://youtu.be/op_7cUKceaA Помогите пожалуйста разобраться в чём проблема) Манифест: <?xml version="1.0" encoding="utf-8"?> <manifest...
Портирование на Андроид Android
Здравствуйте! В своё время насмотрелся "Во все тяжкие" и запилил программку на Java под ПК Хотелось бы портануть на Андроид. Программирование под оного знаю плохо. Как сделать подобный вывод? С помощью метода setText класса EditText? Если да, то как так же динамически для разных кусков менять стиль, шрифт, размер текста?
Android Android Studio: ошибки http://www.cyberforum.ru/android-dev/thread1301922.html
При попытке запустить приложение, выдаёт такую ошибку: Unexpected error: package manager reports that package <имя_пакета> has not been installed Почему не установлен? Добавлено через 1 час 29 минут Было что-то непонятное с телефоном. Перепрошил. Сейчас всё хорошо
Android Получить экземпляр класса по переменой класса Создал класс с переменной типа Marker (для карты Google Maps). public static class MyClass { int id; Marker marker; } подробнее

Показать сообщение отдельно
Seivan
1 / 1 / 0
Регистрация: 17.12.2013
Сообщений: 97
17.11.2014, 10:53  [ТС]     ListView, База данных и SimpleCursorAdapter - onItemClick срабатывает только после добавления данных
Нет, вроде... там ничего не меняется...
пробовал обновлять - пофиг... (

Добавлено через 1 минуту
Приду домой - закину сюда коды... может,, конечно, я где-то что-то прозявал...

Добавлено через 1 час 34 минуты
Вот творчество...

MainActivity:

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
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
...
 
public class MainActivity extends Activity implements OnClickListener {
 
    static final int PICK_CONTACT_REQUEST = 1;[LIST=1][/LIST]    static final int REQUEST_CODE =2;
 
    SharedPreferences sPref;
 
    public static final String APP_PREFERENCES_NAME = "Nickname";
    public static final String APP_PREFERENCES_NUMBER = "Number";
    public static final String APP_PREFERENCES_CODE = "Code";
    public static final String APP_PREFERENCES_OPER = "Oper";
 
    EditText editText, edText, etName;
    Button btnName, btnCalls, btnBmj, btnSaveCall, btnCode;
    CheckBox checkBox;
    TextView tvNameOper;
 
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
 
        tvNameOper = (TextView) findViewById(R.id.tvNameOper);
 
        btnName = (Button) findViewById(R.id.btnName);
        btnBmj = (Button) findViewById(R.id.btnBmj);
        btnCalls = (Button) findViewById(R.id.btnCalls);
        btnSaveCall = (Button) findViewById(R.id.btnSaveCall);
        btnCode = (Button) findViewById(R.id.btnCode);
 
        editText = (EditText) findViewById(R.id.editText);
        edText = (EditText) findViewById(R.id.edText);
        etName = (EditText) findViewById(R.id.etName);
 
        checkBox = (CheckBox) findViewById(R.id.checkBox);
 
        btnName.setOnClickListener(this);
        btnCalls.setOnClickListener(this);
        btnBmj.setOnClickListener(this);
        btnSaveCall.setOnClickListener(this);
        btnCode.setOnClickListener(this);
 
        editText.setOnClickListener(this);
        edText.setOnClickListener(this);
 
        checkBox.setOnClickListener(this);
 
        loadText();
    }
 
    @Override
    public void onClick(View v) {
        if (checkBox.isChecked()) {
            edText.setEnabled(true);
            edText.isFocusable();
            edText.selectAll();
            int textLength = edText.getText().length();
            edText.setSelection(textLength, textLength);
        } else {
            edText.setEnabled(false);
        }
        switch (v.getId()) {
            case R.id.btnName:
                Intent pickContactIntent = new Intent(Intent.ACTION_PICK, Uri.parse("content://contacts"));
                pickContactIntent.setType(ContactsContract.CommonDataKinds.Phone.CONTENT_TYPE);
                startActivityForResult(pickContactIntent, PICK_CONTACT_REQUEST);
                break;
 
            case R.id.btnCalls:
                String[] strFields = {CallLog.Calls.NUMBER, CallLog.Calls.CACHED_NAME};
                String strOrder = CallLog.Calls.DATE + " DESC";
                Cursor mCallCursor = getContentResolver()
                        .query(CallLog.Calls.CONTENT_URI, strFields, null, null, strOrder);
                if (mCallCursor != null && mCallCursor.moveToFirst()) {
                    int columns = mCallCursor.getColumnIndex(CallLog.Calls.NUMBER);
                    String numbers = mCallCursor.getString(columns).replaceAll(" ", "").trim();
                    int sip = mCallCursor.getColumnIndex(CallLog.Calls.CACHED_NAME);
                    String name = mCallCursor.getString(sip);
 
                    if (numbers.length() == 13)
                        editText.setText(edText.getText() + numbers.substring(3));
                    else
                        editText.setText(edText.getText() + numbers);
                    etName.setText(name);
                }
                break;
 
            case R.id.btnBmj:
                String encodedHash = Uri.encode("#");
               // String encodedPlus = Uri.encode("+");
                String ussd = editText.getText() + encodedHash;
                startActivityForResult(new Intent("android.intent.action.DIAL",
                        Uri.parse("tel:" + ussd)), 1);
 
                break;
 
            case R.id.btnSaveCall:
                Intent saveCallIntent = new Intent(this, CallsSave.class);
                saveCallIntent.putExtra("name", etName.getText().toString());
                saveCallIntent.putExtra("number", editText.getText().toString());
                startActivity(saveCallIntent);
                break;
            case R.id.btnCode:
                Intent saveCode = new Intent(this, SaveCode.class); // Вот этот Intent  отправляет в ту активити, в которой ListView не работает
 
                startActivityForResult(saveCode, REQUEST_CODE);
                break;
        }
    }
 
    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        if (resultCode == RESULT_OK) {
            switch (requestCode) {
                case PICK_CONTACT_REQUEST:
 
                    if (requestCode == PICK_CONTACT_REQUEST) {
                        Uri contactUri = data.getData();
                        String[] projection = {ContactsContract.CommonDataKinds.Phone.NUMBER,
                                ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME};
                        Cursor cursor = getContentResolver()
                                .query(contactUri, projection, null, null, null);
                        cursor.moveToFirst();
                        int column = cursor.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER);
                        String number = cursor.getString(column).replaceAll(" ", "").
                                replaceAll("-", "").replaceAll(",", " ").replaceAll("[)]", "").replaceAll("[(]", "").trim();
                        int sip = cursor.getColumnIndex(ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME);
                        String name = cursor.getString(sip);
 
                        if (number.length() == 13)
                            editText.setText(edText.getText() + number.substring(3));
                        if (number.length() == 12)
                            editText.setText(edText.getText() + number.substring(2));
                        if (number.length() == 11)
                            editText.setText(edText.getText() + number.substring(1));
                        if (number.length() == 10)
                            editText.setText(edText.getText() + number);
                        if (number.length() < 10)
                            editText.setText("НЕПРАВИЛЬНО НАБРАН НОМЕР!");
                        if (number.length() > 13)
                            editText.setText("НЕПРАВИЛЬНО НАБРАН НОМЕР!");
 
                        etName.setText(name);
                        break;
                    }
                case REQUEST_CODE:   // тут принимаем ответ....
                      if (data == null) {
                         return;
                       }
                    if (requestCode == REQUEST_CODE) {   
                       String cods = data.getStringExtra(SaveCode.CODES);
                       String names = data.getStringExtra(SaveCode.NAMES);
                       tvNameOper.setText(names);
                       edText.setText(cods);
 
                             } else {
                      break;
                    }
            }
        }
    }
    void saveText() {
        sPref = getSharedPreferences("MyPref", MODE_PRIVATE);
        SharedPreferences.Editor ed = sPref.edit();
        ed.putString(APP_PREFERENCES_NAME, editText.getText().toString());
        ed.putString(APP_PREFERENCES_NUMBER, edText.getText().toString());
        ed.putString(APP_PREFERENCES_CODE, etName.getText().toString());
        ed.putString(APP_PREFERENCES_OPER, tvNameOper.getText().toString());
        ed.commit();
        Toast.makeText(this, "Cохранено", Toast.LENGTH_SHORT).show();
    }
    void loadText() {
        sPref = getSharedPreferences("MyPref", MODE_PRIVATE);
        String Nickname = sPref.getString(APP_PREFERENCES_NAME, "");
        String Number = sPref.getString(APP_PREFERENCES_NUMBER, "");
        String Code = sPref.getString(APP_PREFERENCES_CODE, "");
        String Oper = sPref.getString(APP_PREFERENCES_OPER, "");
        editText.setText(Nickname);
        edText.setText(Number);
        etName.setText(Code);
        tvNameOper.setText(Oper);
        Toast.makeText(this, "Номер загружен", Toast.LENGTH_SHORT).show();
    }
    @Override
    protected void onPause() {
        saveText();
        super.onPause();
    }
 
Текущее время: 17:52. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru