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

Работа с SQLiteDatabase - Программирование Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Программирование Android Как передавать данные из сайта на приложение Android? http://www.cyberforum.ru/android-dev/thread1741034.html
Нужно делать приложение для интернет-магазина, но я не знаю как данные сайта передать в приложение. Как в Aliexpress: Все товары показаны и в приложении и на сайте, так же кнопка "Добавить в...
Программирование Android Как вызват код, выполняющийся до старта первой Activity? Добрый день! Столкнулся с задачей, не знаю как её решить лучше. Хочу что бы некоторый код выполнялся при старте приложения, до появления первой Activity. Знаю что можно создать класс, унаследованный... http://www.cyberforum.ru/android-dev/thread1741000.html
Программирование Android Можно ли поставить Open Server на андроид?
Мне нужно локально (без доступа интернет) развернуть сайт на планшете с ОС андроид. Имеется ли такая возможность? Мне даже не обязательно ставить именно Open Server, можно любой другой веб сервер,...
Программирование Android Определить возможность добавления SIP номеров
Доброго времени суток. Недавно начал разбираться в добавлении телефонных контактов и обнаружил следующие, что хоть в API есть возможность с помощью ContactsContract.CommonDataKinds.SipAddress...
Программирование Android OpenCV (ROI, Canny) http://www.cyberforum.ru/android-dev/thread1740934.html
Делаю снимок с камеры, сохраняю его на устройстве по пути filePath, далее нужно обрезать эту фотографию и применить к полученному "обрезку" оператор Кэнни, при поиске нашел различные реализации, но...
Программирование Android Проверить, подключился ли телефон к заданному Bluetooth-адаптеру Мне нужно проверить подключился телефон к заданному блю-адаптеру или нет... Можно использовать BluetoothAdapter.checkBluetoothAddress("90:E7:C4:B1:7C:9A")? или что-то другое? Добавлено через 19... подробнее

Показать сообщение отдельно
Willyams
1 / 1 / 1
Регистрация: 28.06.2015
Сообщений: 80
Завершенные тесты: 1

Работа с SQLiteDatabase - Программирование Android

21.05.2016, 18:09. Просмотров 74. Ответов 5
Метки (Все метки)

Здравствуйте, пишу кликер с использованием базы данных, в которой содержится информация о монстре.
почему то не срабатывает условие cursor.moveToNext() в функции makeGameHarder
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
package com.example.user.trytohitit;
 
 
public class MainActivity extends Activity {
    private int health;
    private String name;
    private int photoId;
    TextView healthView;
    Cursor cursor;
    ImageView view;
    TextView nameView;
    SQLiteOpenHelper clickerDataBaseHelper;
    SQLiteDatabase db;
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        try{
            clickerDataBaseHelper = new ClickerDataBaseHelper(this);
            db = clickerDataBaseHelper.getReadableDatabase();
            //TODO: при смерти босса нужно сместить id на 1 вперед
            cursor = db.query("CLICKER", new String[]{"NAME","HEALTH","IMAGE_RESOURCE_ID"}, "_id = ?", new String[]{Integer.toString(1)}, null,null,null);
            if(cursor.moveToFirst()){
                name = cursor.getString(0);
                health = cursor.getInt(1);
                photoId = cursor.getInt(2);
                Monster m = new Monster(name, health);//бъект класса монстер хз пока куда его деть
 
                view = (ImageView)findViewById(R.id.monsterView);//отрисовываем монстра
                view.setImageResource(photoId);
 
                nameView = (TextView)findViewById(R.id.monsterName);//даем ему имя
                nameView.setText(name);
 
                healthView = (TextView)findViewById(R.id.monsterHealth);
                healthView.setText(String.valueOf(health));
            }
            cursor.close();
            db.close();
 
        }catch (SQLiteException e){
            Toast toast = Toast.makeText(this, "Database unvailable", Toast.LENGTH_SHORT);
            toast.show();
        }
    }
 
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.menu_main, menu);
        return true;
    }
 
 
    public void onHit(View view){
        health-=100;
        healthView.setText(String.valueOf(health));
        if(health <= 0){
            Toast.makeText(this, name + " is dead", Toast.LENGTH_SHORT).show();
            makeGameHarder();
        }
    }
    public void makeGameHarder(){
        if(cursor.moveToNext()){//почему здесь не срабатывает условие ?
            name = cursor.getString(0);
            health = cursor.getInt(1);
            photoId = cursor.getInt(2);
            view.setImageResource(photoId);
            nameView.setText(name);
            healthView.setText(String.valueOf(health));
        }
        cursor.close();
        db.close();
    }
 
    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        // Handle action bar item clicks here. The action bar will
        // automatically handle clicks on the Home/Up button, so long
        // as you specify a parent activity in AndroidManifest.xml.
        int id = item.getItemId();
 
        //noinspection SimplifiableIfStatement
        if (id == R.id.action_settings) {
            return true;
        }
 
        return super.onOptionsItemSelected(item);
    }
}
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
package com.example.user.trytohitit;
 
import android.content.ContentValues;
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
 
/**
 * Created by User on 21.05.2016.
 */
public class ClickerDataBaseHelper extends SQLiteOpenHelper {
    private static final String DB_NAME = "ClickerBase";
    private static final int DB_VERSION = 1;
 
     ClickerDataBaseHelper(Context context){
         super(context,DB_NAME,null,DB_VERSION);
 
     }
    @Override
    public void onCreate(SQLiteDatabase db) {
        db.execSQL("CREATE TABLE CLICKER (_id INTEGER PRIMARY KEY AUTOINCREMENT, " +
                "NAME TEXT, " +
                "HEALTH INTEGER, " +
                "IMAGE_RESOURCE_ID INTEGER);");
        insertMonster(db,"Butcher",1000,R.drawable.butcher);
        insertMonster(db,"Belial",3000,R.drawable.belial);
        insertMonster(db,"Azmodan",5000,R.drawable.azmodan);
        insertMonster(db,"Butcher",10000,R.drawable.diablo);
 
    }
 
    private static void insertMonster(SQLiteDatabase db, String name, int health, int resourceId){
        ContentValues monsterValues = new ContentValues();
        monsterValues.put("NAME", name);
        monsterValues.put("HEALTH", health);
        monsterValues.put("IMAGE_RESOURCE_ID", resourceId);
        db.insert("CLICKER", null,monsterValues);
    }
 
    @Override
    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
 
    }
 
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru