У меня есть 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.