Android:不确定代码功能?
我不确定下面这行代码的作用是什么Android:不确定代码功能?,android,listview,android-intent,Android,Listview,Android Intent,我不确定下面这行代码的作用是什么 int convertedNumber = getIntent().getIntExtra("convertedNumber", 0); 我认为它是从另一个活动中获取整数转换的数字?但是,如何在当前活动的列表视图等中使用此编号 当前类别: public class DisplayTimesTable extends Activity { // set up vars TextView trace; ListView listView;
int convertedNumber = getIntent().getIntExtra("convertedNumber", 0);
我认为它是从另一个活动中获取整数转换的数字?但是,如何在当前活动的列表视图等中使用此编号
当前类别:
public class DisplayTimesTable extends Activity {
// set up vars
TextView trace;
ListView listView;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// setting equal to text layout View
setContentView(R.layout.display);
//initialise vars
initialiseVars();
// This declares and int variable, assigns it an int value from the calling Intent if its not there it is defaulted to 0
int convertedNumber = getIntent().getIntExtra("convertedNumber", 0);
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1);
int result = 0;
// loop to give list view
for (int i = 1; i <= convertedNumber; ++i)
adapter.add(convertedNumber + "x" + i + "=" + result);
listView.setAdapter(adapter);
}
/**
* method to initialise all of the buttons, textviews etc used to clean up
* the onCreate.
*/
private void initialiseVars() {
// Setting up (initialising) all the buttons text views etc from the xml
trace = (TextView) findViewById(R.id.tvTrace);
listView = (ListView) findViewById(R.id.lvTables);
}
}
public类DisplayTimesTable扩展活动{
//设置变量
文本视图跟踪;
列表视图列表视图;
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
//设置等于文本布局视图
setContentView(R.layout.display);
//初始化变量
initialiseVars();
//这个声明和int变量,从调用意图为其分配一个int值,如果它不在那里,则默认为0
int convertedNumber=getIntent().getIntExtra(“convertedNumber”,0);
ArrayAdapter=新的ArrayAdapter(这是android.R.layout.simple\u list\u item\u 1);
int结果=0;
//循环以提供列表视图
对于(int i=1;i
所以
//这个声明和int变量,从调用意图为其分配一个int值,如果它不在那里,则默认为0
int convertedNumber = getIntent().getIntExtra("convertedNumber",0);
当您打开一个活动时,您可以向它传递一些数据(称为extras)(可以是int、float或Object),通过这一行,您可以读取额外的名为“convertedNumber”的数据(如果存在),如果找不到具有此名称的数据,则读取0。(请记住,启动活动时,您应该使用名称!)。结果将插入变量中
毕竟,你会有一个整数,可能意味着一切,你可以在任何地方使用它…在ListView,edittext,TextView等
意图:
就像你说的那样
int value = getIntent().getIntExtra("convertedNumber", 0);
ListView listView = (ListView) findViewById(R.id.listview);
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1);
for (int i = 1; i <= value; ++i)
adapter.add(value + "x" + i);
listView.setAdapter(adapter);
您是正确的,它确实从另一个活动获取了一个具有键“convertedNumber”的int。如果未找到键“convertedNumber”,则将0分配给变量convertedNumber
至于问题的另一部分,请查看文档中使用listView的情况。它将包含在getIntextra中传递的值
Intent intent = new Intent(myActivity.this, newClass.class);
intent.putExtra("selectedItem", info.id);
this.startActivity(intent);
目标活动将包含
long iSelectedItem = intent.getIntExtra("selectedItem", -1);
iSelectedItem的值设置为在info.id中传递的值;您可以随意使用它,它是一个int值。如果该键没有额外的值,它可以是0。顺便说一句,您还应该始终检查getIntent()
不是null
此链接可能有用:谢谢,但我不确定如何在列表视图中使用此链接?这取决于情况,我的意思是您可以创建一个简单的ArrayAdapter并添加此值…但您确定要使用列表视图吗?它用于显示列表而不是单个值…可能是文本视图?是的,我想创建一个列表根据该值生成的时间表的数量。例如,如果是6,则在下一个活动中将显示6x1 6x2等。执行此操作的最佳方法是什么?@RNI2013请参阅我的示例。谢谢,这太好了,请检查我的编辑,我正在尝试获取要输出的答案,但我遇到了一个“i”错误1.我觉得这很简单
Intent intent = new Intent(myActivity.this, newClass.class);
intent.putExtra("selectedItem", info.id);
this.startActivity(intent);
long iSelectedItem = intent.getIntExtra("selectedItem", -1);