Java 如何将Roman Nuriks Wizard Pager review中的数据放入数据库?
好吧,我知道以前有人问过这个问题,但问题和答案对我的处境都没有帮助。我需要做的只是在向导结束时从review页面获取所有数据,并将其放入我的SQLite数据库中,以便将来在我的应用程序中使用它 我甚至不确定在这种情况下我应该上哪门课。我真的希望有人谁有麻烦,这之前可以帮助我,因为我已经寻找了几天,我被难住了 提前谢谢你能给我的任何帮助 这是我到目前为止尝试过的,但是它总是返回空值Java 如何将Roman Nuriks Wizard Pager review中的数据放入数据库?,java,android,sqlite,android-fragmentactivity,wizard,Java,Android,Sqlite,Android Fragmentactivity,Wizard,好吧,我知道以前有人问过这个问题,但问题和答案对我的处境都没有帮助。我需要做的只是在向导结束时从review页面获取所有数据,并将其放入我的SQLite数据库中,以便将来在我的应用程序中使用它 我甚至不确定在这种情况下我应该上哪门课。我真的希望有人谁有麻烦,这之前可以帮助我,因为我已经寻找了几天,我被难住了 提前谢谢你能给我的任何帮助 这是我到目前为止尝试过的,但是它总是返回空值 mNextButton.setOnClickListener(new View.OnClickListener(
mNextButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if (mPager.getCurrentItem() == mCurrentPageSequence.size()) {
String title = mWizardModel.findByKey("Surf:Post Title").getData().getString(SingleTextFieldPage.SIMPLE_DATA_KEY);
int price = mWizardModel.findByKey("Surf:Price").getData().getInt(NumberPage.SIMPLE_DATA_KEY);
String maincat = mWizardModel.findByKey("Main Category").getData().getString(Page.SIMPLE_DATA_KEY);
Long newId = myDb.insertRow(title, price, maincat);
DialogFragment dg = new DialogFragment() {
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
return new AlertDialog.Builder(getActivity())
.setMessage(R.string.submit_confirm_message)
.setPositiveButton(R.string.submit_confirm_button, null)
.setNegativeButton(android.R.string.cancel, null)
.create();
}
};
dg.show(getSupportFragmentManager(), "place_order_dialog");
} else {
if (mEditingAfterReview) {
mPager.setCurrentItem(mPagerAdapter.getCount() - 1);
} else {
mPager.setCurrentItem(mPager.getCurrentItem() + 1);
}
}
}
});
@德里克·史密斯:我找到了一种保存数据的方法,它对我很有用 这是我的AbstractWizardModel类块:
@Override
protected PageList onNewRootPageList() {
return new PageList(
new LoginInfoPage(this, "Login Information").setRequired(true));
}
它类似于随库提供的示例
现在在MainActivity中,写下如下内容:
String data = mWizardModel.findByKey("LoginInformation").getData().getString(LoginInfoPage.EMAIL_DATA_KEY);
检索数据的主要内容是“键”。在我的例子中,关键是“登录信息”,这也是您的标题
希望能有帮助
关于,我认为这是您需要的: 这是输入的测验数据的层次结构: 页面列表>分支页面>分支(问题)>选择(单个或多个) 示例:
String data = mWizardModel.findByKey("Sandwich:Bread").getData().getString(Page.SIMPLE_DATA_KEY);
这也是我从问题中获得所有选定答案并计算分数的方法
里面
mNextButton.setOnClickListener
if (mPager.getCurrentItem() == mCurrentPageSequence.size()) {
int score = 0;
String q1 = mWizardModel.findByKey("Yes:Question 1")
.getData().getString(Page.SIMPLE_DATA_KEY);
String q2 = mWizardModel.findByKey("Yes:Question 2")
.getData().getString(Page.SIMPLE_DATA_KEY);
String q3 = mWizardModel.findByKey("Yes:Question 3")
.getData().getString(Page.SIMPLE_DATA_KEY);
String q4 = mWizardModel.findByKey("Yes:Question 4")
.getData().getString(Page.SIMPLE_DATA_KEY);
String q5 = mWizardModel.findByKey("Yes:Question 5")
.getData().getString(Page.SIMPLE_DATA_KEY);
String q6 = mWizardModel.findByKey("Yes:Question 6")
.getData().getString(Page.SIMPLE_DATA_KEY);
String q7 = mWizardModel.findByKey("Yes:Question 7")
.getData().getString(Page.SIMPLE_DATA_KEY);
String q8 = mWizardModel.findByKey("Yes:Question 8")
.getData().getString(Page.SIMPLE_DATA_KEY);
String q9 = mWizardModel.findByKey("Yes:Question 9")
.getData().getString(Page.SIMPLE_DATA_KEY);
String q10 = mWizardModel.findByKey("Yes:Question 10")
.getData().getString(Page.SIMPLE_DATA_KEY);
if (q1 == "c3") {
score = score + 1;
}
if (q2 == "c2") {
score = score + 1;
}
if (q3 == "c1") {
score = score + 1;
}
if (q4 == "c4") {
score = score + 1;
}
if (q5 == "c1") {
score = score + 1;
}
if (q6 == "c4") {
score = score + 1;
}
if (q7 == "c2") {
score = score + 1;
}
if (q8 == "c3") {
score = score + 1;
}
if (q9 == "c1") {
score = score + 1;
}
if (q10 == "c4") {
score = score + 1;
}
Toast.makeText(getApplicationContext(), "Score:" + score,
Toast.LENGTH_LONG).show();
像往常一样,你自己做了什么尝试?你不能期望人们回答这样一个开放式的问题,甚至在没有他人帮助的情况下,不付出最小的努力来完成这项工作……是的,很抱歉我添加了一些,请看一看,如果我没有尝试过1000次,我也不会问这个具体的问题……欢迎你的回答,您知道如何从位于另一个分支内部的分支获取数据吗?就像努里克例子中的吐司。如果您选择是,它将询问您需要多长时间,我需要获得该值,需要多长时间,我不知道如何。。。谢谢!:)
if (mPager.getCurrentItem() == mCurrentPageSequence.size()) {
int score = 0;
String q1 = mWizardModel.findByKey("Yes:Question 1")
.getData().getString(Page.SIMPLE_DATA_KEY);
String q2 = mWizardModel.findByKey("Yes:Question 2")
.getData().getString(Page.SIMPLE_DATA_KEY);
String q3 = mWizardModel.findByKey("Yes:Question 3")
.getData().getString(Page.SIMPLE_DATA_KEY);
String q4 = mWizardModel.findByKey("Yes:Question 4")
.getData().getString(Page.SIMPLE_DATA_KEY);
String q5 = mWizardModel.findByKey("Yes:Question 5")
.getData().getString(Page.SIMPLE_DATA_KEY);
String q6 = mWizardModel.findByKey("Yes:Question 6")
.getData().getString(Page.SIMPLE_DATA_KEY);
String q7 = mWizardModel.findByKey("Yes:Question 7")
.getData().getString(Page.SIMPLE_DATA_KEY);
String q8 = mWizardModel.findByKey("Yes:Question 8")
.getData().getString(Page.SIMPLE_DATA_KEY);
String q9 = mWizardModel.findByKey("Yes:Question 9")
.getData().getString(Page.SIMPLE_DATA_KEY);
String q10 = mWizardModel.findByKey("Yes:Question 10")
.getData().getString(Page.SIMPLE_DATA_KEY);
if (q1 == "c3") {
score = score + 1;
}
if (q2 == "c2") {
score = score + 1;
}
if (q3 == "c1") {
score = score + 1;
}
if (q4 == "c4") {
score = score + 1;
}
if (q5 == "c1") {
score = score + 1;
}
if (q6 == "c4") {
score = score + 1;
}
if (q7 == "c2") {
score = score + 1;
}
if (q8 == "c3") {
score = score + 1;
}
if (q9 == "c1") {
score = score + 1;
}
if (q10 == "c4") {
score = score + 1;
}
Toast.makeText(getApplicationContext(), "Score:" + score,
Toast.LENGTH_LONG).show();