使用 CWAC-touchlist 进行拖放
我有两个问题。
1. 如何让应用程序记住我通过拖放创建的 ListView 中的新顺序。就像现在一样,我可以重新订购商品,但每次打开应用程序时,我都必须再次重新订购商品。
2. 我的应用程序应该从每个项目打开不同的网页。但是,当我重新排序项目时,网络链接不会重新排序。他们坚持相同。
例如:我有 Google 和 Yahoo! 项目所以链接是“http://google.com”和“http://yahoo.com”。然后我重新排序项目:Google 位于顶部,但我将 Yahoo 拖到顶部。之后,当我按“雅虎!”时项目它打开谷歌的网站,当我按“谷歌”时,它打开雅虎的网站。
这是我制作 OnItemClickListener 的方法:
getListView().setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
String content = links[position];
Intent showContent = new Intent(getApplicationContext(),
Web.class);
showContent.setData(Uri.parse(content));
startActivity(showContent);
}
});
I have two questions.
1. How to make app remember new order in ListView what I made with drag and drop. Like now I can reorder items but every time I open app, I have to reorder items again.
2. My app should open different webpage from each item. But when I reorder items then web links doesn't reorder. They stick on same.
Like example: I have items Google and Yahoo! so links are "http://google.com" and "http://yahoo.com". Then I reorder item: Google was top but I drag Yahoo to top. After that when I press "Yahoo!" item it open Google's website and when I press "Google" it opens Yahoo's website.
Here is how I have made OnItemClickListener:
getListView().setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
String content = links[position];
Intent showContent = new Intent(getApplicationContext(),
Web.class);
showContent.setData(Uri.parse(content));
startActivity(showContent);
}
});
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
将顺序存储在某处(例如,数据库表中的序列列),并在将数据加载回适配器时重新排序数据。
引用文档:
Store the order somewhere (e.g., sequence column in your database table) and re-order the data when loading it back into your
Adapter
.Quoting the documentation: