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

Update в ListView - Программирование Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Программирование Android Зацените мой HelloWorld пожалуйста http://www.cyberforum.ru/android-dev/thread1159758.html
https://play.google.com/store/search?q=%D0%B1%D0%BB%D0%BE%D0%BA%D0%BD%D0%BE%D1%82&c=apps :)
Программирование Android AnimationDrawable В приложении, когда пытаюсь программно заменить кадровую анимацию, то приложение вылетает, подскажите в чем ошибка: public class MainActivity extends Activity { AnimationDrawable mAnim; /** Called when the act.pivity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); ... http://www.cyberforum.ru/android-dev/thread1159747.html
DATE_MODIFIED в человеческий вид Программирование Android
пробую так Log.d("date "+cursor.getString(fileColumn), DateFormat.format("MM/dd/yyyy", new Date(Long.valueOf(cursor.getString(cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATE_MODIFIED))))).toString()); на вижу такую фигню date 1341676044 01/16/1970 Добавлено через 20 часов 51 минуту наверх
Программирование Android Не обновляется программа Google play
Сделал игру Flappy Minecraft, после >500 скачиваний, я решил добавить рекламу и сделал обновление, но оно не опубликовалось, писало что нужно ждать до 24 часа, я жду уже 2 неделю... PS: Статус программы: Опубликовано.
Программирование Android SQLite, custom ContentProvider and Loader http://www.cyberforum.ru/android-dev/thread1159425.html
Добрый вечер, уже какой день пытаюсь разобраться с одной темой http://www.vogella.com/tutorials/AndroidSQLite/article.html, ничего не получается, уже проект с десяток раз перебирал, все равно ошибки. Может кто сделать и скинуть сам проект? Или попробовать каким то волшебным образом исправить мой. (Нужна только тема 9. Tutorial: SQLite, custom ContentProvider and Loader). Буду благодарен.
Программирование Android Не отображает картинку Подскажите, в чём ошибка в приведённом коде. Пытаюсь вывести на экран простой png, но почему-то не получается. Я только начинаю изучать вывод графики, подскажите пожалуйста что не так import java.io.InputStream; import java.io.IOException; import android.app.*; import android.content.Context; import android.os.*; import android.graphics.Canvas; import android.graphics.Color; подробнее

Показать сообщение отдельно
toxic_wower
0 / 0 / 0
Регистрация: 23.04.2014
Сообщений: 12

Update в ListView - Программирование Android

28.04.2014, 08:43. Просмотров 434. Ответов 0
Метки (Все метки)

BD:
Javascript
1
2
3
4
5
6
7
public void updateRec(String txt, long id) {
        ContentValues cv = new ContentValues();
        cv.put(COLUMN_TXT, txt);
        mDB.update(DB_TABLE, cv, COLUMN_ID + " =? ",
                new String[] { String.valueOf(id) });
 
    }
MainActivity:
Javascript
1
2
3
4
5
6
7
8
9
10
11
.setPositiveButton("OK",
                            new DialogInterface.OnClickListener() {
                                public void onClick(DialogInterface dialog,
                                        int id) {
                                    EditText editTextDialogUserInput = userInput;
                                    db.updateRec(editTextDialogUserInput
                                            .getText().toString(), 3);
                                    editTextDialogUserInput.setText("");
                                    cursor.requery();
 
                                }
Жму на любую строчку из ListView открывается диалог, ввожу любое значение и текст отображается на 3й строчке.
Если поменяю значение на 4 то будет редактироваться 4 строчка, независимо от того на какую строчку я нажму.
Javascript
1
2
db.updateRec(editTextDialogUserInput
.getText().toString(), 4);
Как сделать чтобы редактировалась именно та строчка на которую жму?


Вот полный код для BD:
Javascript
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
public class DB {
 
    // protected static final long id = 1;
 
    private static final String DB_NAME = "mydb";
    private static final int DB_VERSION = 1;
    private static final String DB_TABLE = "mytab";
 
    public static final String COLUMN_ID = "_id";
    public static final String COLUMN_IMG = "img";
    public static final String COLUMN_TXT = "txt";
    public static final String COLUMN_NAME = "name";
 
    private static final String DB_CREATE = "create table " + DB_TABLE + "("
            + COLUMN_ID + " integer primary key autoincrement, " + COLUMN_IMG
            + " integer, " + COLUMN_TXT + " text" + "," + COLUMN_NAME + " "
            + ");";
 
    private final Context mCtx;
 
    private DBHelper mDBHelper;
    private SQLiteDatabase mDB;
 
    public DB(Context ctx) {
        mCtx = ctx;
    }
 
    // открыть подключение
    public void open() {
        mDBHelper = new DBHelper(mCtx, DB_NAME, null, DB_VERSION);
        mDB = mDBHelper.getWritableDatabase();
    }
 
    // закрыть подключение
    public void close() {
        if (mDBHelper != null)
            mDBHelper.close();
    }
 
    // получить все данные из таблицы DB_TABLE
    public Cursor getAllData() {
        return mDB.query(DB_TABLE, null, null, null, null, null, null);
    }
 
    // добавить запись в DB_TABLE
    public void addRec(String txt, int img) {
        ContentValues cv = new ContentValues();
        cv.put(COLUMN_TXT, txt);
        cv.put(COLUMN_IMG, img);
        mDB.insert(DB_TABLE, null, cv);
    }
 
    // редактировать
    public void updateRec(String txt, long id) {
        ContentValues cv = new ContentValues();
        cv.put(COLUMN_TXT, txt);
        mDB.update(DB_TABLE, cv, COLUMN_ID + " =? ",
                new String[] { String.valueOf(id) });
 
    }
 
    public void delRec(long id) {
        mDB.delete(DB_TABLE, COLUMN_ID + " = " + id, null);
    }
 
    // класс по созданию и управлению БД
    private class DBHelper extends SQLiteOpenHelper {
 
        public DBHelper(Context context, String name, CursorFactory factory,
                int version) {
            super(context, name, factory, version);
        }
 
        // создаем и заполняем БД
        @Override
        public void onCreate(SQLiteDatabase db) {
            db.execSQL(DB_CREATE);
 
            ContentValues cv = new ContentValues();
            for (int i = 1; i < 2; i++) {
                cv.put(COLUMN_TXT, "Ввести время " + i);
                // cv.put(COLUMN_IMG, R.drawable.ic_launcher);
                db.insert(DB_TABLE, null, cv);
            }
        }
 
        @Override
        public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
        }
    }
 
}
MainActivity:
Javascript
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
public class MainActivity extends Activity {
 
    // protected static final long id = 1;
 
    final String TAG = "myLogs";
 
    final Context context = this;
    final int DIALOG_EDIT = 1;
 
    ListView lvMain;
    DB db;
    Cursor cursor;
    SimpleCursorAdapter scAdapter;
 
    /** Called when the activity is first created. */
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
 
        // открываем подключение к БД
        db = new DB(this);
        db.open();
 
        // получаем курсор
        cursor = db.getAllData();
        startManagingCursor(cursor);
 
        // формируем столбцы сопоставления
        String[] from = new String[] { DB.COLUMN_IMG, DB.COLUMN_TXT };
        int[] to = new int[] { R.id.ivImg, R.id.tvText };
 
        // создааем адаптер и настраиваем список
        scAdapter = new SimpleCursorAdapter(this, R.layout.item, cursor, from,
                to);
        lvMain = (ListView) findViewById(R.id.lvMain);
        lvMain.setAdapter(scAdapter);
 
        // Связываемся с ListView
        ListView lvMain = (ListView) findViewById(R.id.lvMain);
 
        lvMain.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            public void onItemClick(AdapterView<?> parent, View view,
                    int position, long id) {
                showDialog(DIALOG_EDIT);
            }
        });
 
    }
 
    protected Dialog onCreateDialog(int id) {
        if (id == DIALOG_EDIT) {
            AlertDialog.Builder adb = new AlertDialog.Builder(this);
 
            // !
            // get prompts.xml view
            LayoutInflater li = LayoutInflater.from(context);
            View promptsView = li.inflate(R.layout.promts, null);
 
            AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(
                    context);
 
            // set prompts.xml to alertdialog builder
            alertDialogBuilder.setView(promptsView);
 
            final EditText userInput = (EditText) promptsView
                    .findViewById(R.id.editTextDialogUserInput);
 
            // set dialog message
            alertDialogBuilder
                    .setCancelable(false)
                    .setPositiveButton("OK",
                            new DialogInterface.OnClickListener() {
                                public void onClick(DialogInterface dialog,
                                        int id) {
                                    EditText editTextDialogUserInput = userInput;
                                    db.updateRec(editTextDialogUserInput
                                            .getText().toString(), 3);
                                    editTextDialogUserInput.setText("");
                                    cursor.requery();
 
                                }
                            })
                    .setNegativeButton("Cancel",
                            new DialogInterface.OnClickListener() {
                                public void onClick(DialogInterface dialog,
                                        int id) {
                                    dialog.cancel();
                                }
                            });
 
            // create alert dialog
            AlertDialog alertDialog = alertDialogBuilder.create();
 
            // show it
            alertDialog.show();
 
        }
 
        // !
 
        return super.onCreateDialog(id);
    }
 
    protected void onDestroy() {
        super.onDestroy();
        // закрываем подключение при выходе
        db.close();
    }
 
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru