我尝试将ContentValues
传递给数据库。
public long createEntry(String name, String description) {
ContentValues cv = new ContentValues();
cv.put(KEY_NAME, name);
cv.put(KEY_DESCRIPTION, description);
return ourDatabase.insert(DATABASE_TABLE, null, cv);
}
此方法有效。但现在我想知道如何通过意图将其传递给其他形式。我只知道使用意图来传输视图/表单,而不是如何传递数据。
public void onClick(View v) {
Log.i("lol","hello");
switch (v.getId()) {
case R.id.oil:
Intent i = new Intent("com.gtxradeon.brands.FirstBrandActivity");
startActivity(i);
finish();
break;
case R.id.android:
Intent i1 = new Intent(this, FirstBrandActivity.class);
startActivity(i1);
break;
default:
break;
}
最后,Bundles和ContentValues之间有什么区别..我已经尝试阅读Android的谷歌教程但它让我更加困惑。
答案 0 :(得分:3)
ContentValue
用于将数据更新/插入到SQLite数据库等永久存储数据结构中。使用ContentValue
来防止SQL注入非常重要。
另一方面,Bundle用于使用Activities
在Intent
之间传递数据。例如,
Bundle bundle = new Bundle();
bundle.putString("name", "John Doe");
Intent intent = new Intent();
intent.putExtras(bundle);
您可以通过执行以下操作检索下一个Bundle
中的Activity
Bundle bundle = getIntent().getExtras();
String string = bundle.getString("name");
实现相同结果的另一种更常见的方法是:
Intent intent = new Intent();
intent.putExtra("name", "John Doe");
然后在Activity
上,您获得了Intent
:
Intent receivedIntent = getIntent();
String name = receivedIntent.getStringExtra("name");
答案 1 :(得分:1)
通常,内容值在数据库中使用,如Sql。 我建议将值从一个活动传递给另一个活动。
1.Bundle。 2.Shared偏好。 3.static变量。
软件包: -
Bundle b=new Bundle();
b.putString("key","value you need to retrieve in another activity");
b.putString("name","nikhil");
Intent i=new Intent(ctx,Youractivityname.class);
i.putExtras(b);
StartActiviyt(i);
在您的下一个活动页面
Intent get=getIntent();
Bundle b=get.getExtras();
if(b!=null){
String name=b.getString("name");
}
SharedPreferences: -
SharedPreferences sp;
SharedPreferences.Editor edit;
sp = getSharedPreferences("enter", MODE_PRIVATE);
edit = sp.edit();
edit.putString("username", nikhil);
edit.commit();
在下一个活动中
SharedPreferences sp = getSharedPreferences("enter", MODE_PRIVATE);
user.setText(sp.getString("username", "default value"));
静态变量: - 在第一次活动中: -
static String s="nikhil";
在下一个活动中: -
String n=firstactivity.s