我有两个类,其中一个我传递给它发送两个参数 1-文件URL 2-文件名 因为我不想为我拥有的每个文件创建这个类
第一个类从OnItemClickListener传递参数
list.setOnItemClickListener(new ListView.OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
if (position == 0) {
// pass parameters file name & file url
}
第二课
public void onClick(View v) {
// starting new Async Task
new DownloadFileFromURL().execute(file_url);
}
OutputStream output=new FileOutputStream(new File(dir, filename));
答案 0 :(得分:1)
您需要创建Bundle并在其中存储URL和文件名。然后,您可以在调用新活动的意图中传递此捆绑包。在新类中,您使用getIntent().getExtras()
从包中提取信息。
答案 1 :(得分:1)
您可以从第一个类传递fileName和fileURL,如下所示,
// pass parameters file name & file url
Intent i = new Intent(FirstClass.this,SecondClass.this);
i.putExtra("FileName",fileName);
i.putExtra("FileURL",fileURL);
startActivity(i);
从以下第二项活动中获取,
Bundle b = getIntent().getExtras();
filename = b.getString("fileName");
file_url = b.getString("fileURL");
答案 2 :(得分:0)
您可以通过以下代码执行此操作:
第一个类从OnItemClickListener传递参数
list.setOnItemClickListener(new ListView.OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
if (position == 0) {
// pass parameters file name & file url
Intent i = new Intent(FirstClass.this,SecondClass.this);
i.putExtra("FileName",fileName);
i.putExtra("FileURL",fileURL);
startActivity(i);
}
第二课
public void onClick(View v) {
filename = getIntent().getStringExtra("fileName");
file_url = getIntent().getStringExtra("fileURL");
// starting new Async Task
new DownloadFileFromURL().execute(file_url);
}
OutputStream output=new FileOutputStream(new File(dir, filename));