我在使用Intent浏览屏幕时遇到问题。我想发送一个变量并在另一个类中使用它。
我正在使用一个方法,该方法接受变量,但我不知道如何将其发送到新屏幕,这将用它来做一些事情。
主类调用metod:
private void pantallaDetalles(final int identificador)
{
startActivityForResult(new Intent(this,MostrarDetalles.class),REQST_CODE);
}
MostrarDetalles.class是* .java,它将获取变量。我这样开头:
public class MostrarDetalles extends Activity {
SQLiteDatabase db;
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.detalles);
//more code...
Cursor c = db.rawQuery("SELECT * FROM table WHERE _id="+ identificador, null);
}
你知道吗?我在说这个。我不知道如何通过Intent将“identificador”变量从主类发送到第二类。
你能帮我解决这个问题吗?非常感谢你的建议。
JMasia。
答案 0 :(得分:12)
在意图中使用extras包。
Intent i = new Intent(...);
i.putExtra("name_of_extra", myObject);
然后on onCreate:
getIntent.getIntExtra("name_of_extra", -1);
答案 1 :(得分:6)
屏幕1:
Intent i=new Intent("com.suatatan.app.Result");
i.putExtra("VAR_RESULT", "Added !");
startActivity(i);
屏幕2 :(接收方):
TextView tv_sonuc = (TextView) findViewById(R.id.tv_sonuc);
Bundle bundle = getIntent().getExtras();
String var_from_prev_intent = bundle.getString("VAR_RESULT");
tv_sonuc.setText(var_from_prev_intent);
答案 2 :(得分:0)
您可以使用Intent.putExtra()
将要发送的数据与意图捆绑在一起。