我不确定下面的代码行是做什么的?
int convertedNumber = getIntent().getIntExtra("convertedNumber", 0);
我认为它是从另一个活动获得int转换的数字?但是,如何在当前活动的列表视图等中使用此数字呢?
当前课程:
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);
}
}
答案 0 :(得分:0)
int convertedNumber // this is declaring an int variable
= // this is an assignment operator
getIntent() // this gets the calling Activity which is the Activity that started this Intent
getIntExtra("convertedNumber",0) // this is getting an integer from the calling activity, if it has no value it is set to 0 the default
所以
//这个声明和int变量,如果它没有默认为0,则从调用的Intent中赋予一个int值
int convertedNumber = getIntent().getIntExtra("convertedNumber",0);
答案 1 :(得分:0)
当你打开一个Acitivty时,你可以传递一些数据(称为extras)(可以是一个int,float或一个对象),用这行你读取额外名为&#34; convertedNumber&#34;如果存在则为0,如果未找到此名称,则为0。 (请记住,当你启动活动时,你应该使用名称!)..结果将被插入变量。
毕竟你将拥有一个整数,可能意味着一切,你可以在任何地方使用它...在ListView,edittext,TextView等。
意图:http://developer.android.com/reference/android/content/Intent.html
你说的例子
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);
它将输出一个列表:
convertedNumberx1
convertedNumberx2
convertedNumberx3
convertedNumberx4
convertedNumberxconvertedNumber
答案 2 :(得分:0)
你是对的,它从另一个活动获得一个带有“convertedNumber”键的int。如果未找到键“convertedNumber”,则将0分配给变量convertedNumber。
至于问题的其他部分,请查看文档中的listView。
答案 3 :(得分:0)
它将包含在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中传递的内容;