как получить данные из базы данных в базе данных sqlite в Android - PullRequest
0 голосов
/ 29 ноября 2011

У меня есть mainacctivity, в котором у меня есть кнопка «insertrecipe».когда пользователь нажимает кнопку, другое действие начинает использовать намерение и переходит от «mainactivity» к «insertrecipe», и пользователю будет показано текстовое поле, в котором он может ввести текст, а также кнопка «Отправить».когда пользователь закончит ввод текста и нажмет кнопку «отправить», этот текст должен быть введен в базу данных и одновременно извлечь весь рецепт из базы данных, которая в настоящее время присутствует.

Когда пользователь нажмет кнопку «insertrecipe», будет вызвано следующее действие:

import mad.project.R;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
public class InsertRecipeActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);
    setContentView(R.layout.insertrecipe);

    final EditText RecipeBox = (EditText) findViewById(R.id.RecipeBox);
    Button submit_button = (Button) findViewById(R.id.SubmitRecipe);

    final DatabaseHelper db = new DatabaseHelper(this); 


    submit_button.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View arg0) {
    String Recipe_Box = RecipeBox.getText().toString();
    db.Insert_Recipe_Into_DB(Recipe_Box);
    Intent mi = new Intent(InsertRecipeActivity.this, ShowRecipeActivity.class);
     startActivity(mi);
}
    });

}

}

В вышеупомянутом упражнении я вводю рецепт в базу данных, используя db.Insert_Recipe_Into_DB (Recipe_Box);и затем вызывая другое действие «showrecipeactivity», чей код выглядит следующим образом:

  public class ShowRecipeActivity extends ListActivity{

public void onCreate(Bundle savedInstanceState) {
     super.onCreate(savedInstanceState);

     final DatabaseHelper db = new DatabaseHelper(this);
     String [] recipe ;
     String b="                     Recipe ";
     recipe= db.get_recipe();
     if((recipe==null) )
     {Toast.makeText(getApplication(), "Menu didn't selected",               Toast.LENGTH_SHORT).show();         
     }
     int b_len = recipe.length;
     int total=b_len+1;

     String [] todaymenu = new String[total];
     todaymenu[0]=b;
     for(int i = 1;i<=b_len;i++)
     {
         todaymenu[i]=recipe[i-1];
     }

     this.setListAdapter(new ArrayAdapter<String>(this,R.layout.show_recipe, R.id.Today ,todaymenu));

}

}

но это действие не работает, я имею в виду, когда я нажимаю кнопку «submit», ошибка показывает «Forceclose»,Может ли кто-нибудь помочь мне в этом, пожалуйста.моя таблица базы данных содержит только одно поле типа text.

1 Ответ

0 голосов
/ 29 ноября 2011

Канал NewBoston на YouTube содержит учебники по Android, а некоторые из них охватывают использование sqllite

http://www.youtube.com/watch?v=1JyC_xv20yE

Учебное пособие 111 - 124 охватывает все, что вам нужно о SQLlite. У него есть приложение, в которое можно вводить данные, извлекать, обновлять, удалять, поэтому они должны быть очень полезны для вас. Видео тоже не слишком длинное, и он объясняет их подробно.

Надеюсь, его видео помогут, они, безусловно, мне очень помогли.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...