【发布时间】:2014-03-07 13:10:19
【问题描述】:
不知道我是否做得对,因为我是 android 编程新手,但我设置了一个 OnItemClickListener 以通过开始一个新的意图来响应用户的列表项选择。
当用户在列表视图中选择任何文章时,他们应该在新活动中看到相应的 txt 文件。
所以在新的活动中,我试图找到一种方法来打开 Assets Folder 的子文件夹中的相应文件 ....
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity);
Intent i = getIntent();
int position = i.getExtras().getInt("position");
TextView news = (TextView) findViewById(R.id.txtView);
AssetManager as = getAssets();
InputStream is;
try{
is = as.open(""); <----- !!!
int bytes = is.available();
byte[] b = new byte[bytes];
is.read(b);
is.close();
String s = new String (b);
news.setText(s);
}catch (IOException e){
e.printStackTrace();
}
}
.... 但是我只会成功打开一个 txt 文件。 如何实现此活动以响应上一个活动中的 OnItemClickListener,如下所示...
ls = (ListView) findViewById(R.id.bArt);
ls.setOnItemClickListener(new AdapterView.OnItemClickListener() {
public void onItemClick(AdapterView<?> av, View v, int position, long id) {
Intent i = new Intent (getApplicationContext(), New_Activity.class );
i.putExtra("id", position);
startActivity(i);
}
});
...从资产文件夹中打开正确的 .txt 文件
我已经坚持了很长时间,所以我对功能性答案的赞赏点(没有现金价值)将是无止境的 非常感谢
【问题讨论】:
-
您遇到什么错误?发布 logcat。
-
应该是 int position = i.getExtras().getInt("id");
-
您拥有带有文件名的 ListView,并且您想打开您在第二个活动中按下的文件?
-
No Error Spring Breaker atm 它通过新意图和完全正确的黑带加载空白活动。
-
看看 Rethinavel 是否可行
标签: android eclipse android-activity assets onitemclicklistener