Tag: listview

Android在视图之间绘制一条水平线

我有我的布局如下所示: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" > <TextView android:id="@+id/textView1" style="@style/behindMenuItemLabel" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="10dp" android:text="Twitter Feeds" android:textStyle="bold" /> <ListView android:id="@+id/list" android:layout_width="350dp" android:layout_height="50dp" /> <TextView android:id="@+id/textView1" style="@style/behindMenuItemLabel1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="1dp" android:text="FaceBook Feeds" /> <ListView android:id="@+id/list1" android:layout_width="350dp" android:layout_height="50dp" /> </LinearLayout> 我的要求是在TextView和ListView之间绘制一条水平线 谁能帮忙?

notifyDataSetChange不能从自定义适配器工作

当我重新填充我的ListView ,我从我的Adapter调用一个特定的方法。 问题 : 当我从我的Adapter调用updateReceiptsList ,数据刷新,但我的ListView不反映更改。 问题 : 为什么当我调用notifyDataSetChanged时,我的ListView显示新的数据? 适配器 : public class ReceiptListAdapter extends BaseAdapter { public List<Receipt> receiptlist; private Context context; private LayoutInflater inflater; private DateHelpers dateH; public ReceiptListAdapter(Activity activity, Context mcontext, List<Receipt> rl) { context = mcontext; receiptlist = rl; Collections.reverse(receiptlist); inflater = (LayoutInflater)activity.getSystemService(Context.LAYOUT_INFLATER_SERVICE); dateH = new DateHelpers(); } @Override public int […]

Android列'_id'不存在?

我在记事本示例中遇到了一些麻烦。 以下是NotepadCodeLab / Notepadv1Solution的代码: String[] from = new String[] { NotesDbAdapter.KEY_TITLE }; int[] to = new int[] { R.id.text1 }; SimpleCursorAdapter notes = new SimpleCursorAdapter(this, R.layout.notes_row, c, from, to); 这段代码似乎工作正常。 但是要清楚的是,我运行了ADB实用程序并运行了SQLite 3.我检查了如下的架构: sqlite> .schema CREATE TABLE android_metadata (locale TEXT); CREATE TABLE notes (_id integer primary key autoincrement, title text not null, body text not null); […]

清除listview内容?

我有一个listview的小问题。 我如何清除列表视图内容,知道它有一个自定义的适配器? 编辑:自定义适配器类扩展BaseAdapter,它看起来像这样: import android.app.Activity; import android.content.Context; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.BaseAdapter; import android.widget.TextView; public class MyAdapter extends BaseAdapter { private Activity activity; private String[] data; private static LayoutInflater inflater=null; public MyAdapter(Activity _a, String[] _str) { activity = _a; data = _str; inflater = (LayoutInflater)activity.getSystemService(Context.LAYOUT_INFLATER_SERVICE); } public static class ViewHolder{ public TextView […]

最好的方法来使WPF ListView / GridViewsorting列标题点击?

互联网上有很多解决scheme试图填补WPF这个看似非常基本的遗漏。 我真的很困惑什么是“最好”的方式。 例如…我想要在列标题中有很less的上/下箭头来指示sorting方向。 显然,有三种不同的方法可以做到这一点,一些使用代码,一些使用标记,一些使用标记加代码,所有的看起来就像一个黑客。 有没有人遇到过这个问题,并find了解决scheme,他们完全满意? 看起来奇怪的是,WPF中缺less这样一个基本的WinFormsfunction,并且需要被黑客入侵。

如何加速项目添加到ListView?

我将几千(例如53,709)项目添加到WinForms ListView。 尝试1 : 13,870 ms foreach (Object o in list) { ListViewItem item = new ListViewItem(); RefreshListViewItem(item, o); listView.Items.Add(item); } 这运行非常糟糕。 明显的第一个修复是调用BeginUpdate/EndUpdate 。 尝试2 : 3,106 ms listView.BeginUpdate(); foreach (Object o in list) { ListViewItem item = new ListViewItem(); RefreshListViewItem(item, o); listView.Items.Add(item); } listView.EndUpdate(); 这样比较好,但是还有一个数量级太慢了。 让我们分开创buildListViewItems和添加ListViewItems,所以我们find了真正的罪魁祸首: 尝试3 : 2,631 ms var items = new […]

如何自动化和正确alignmentWPF中的GridViewColumn数据?

我怎么能够: 右alignmentID列中的文本 根据具有最长可见数据的单元格的文本长度,使每列自动resize? 这里是代码: <ListView Name="lstCustomers" ItemsSource="{Binding Path=Collection}"> <ListView.View> <GridView> <GridViewColumn Header="ID" DisplayMemberBinding="{Binding Id}" Width="40"/> <GridViewColumn Header="First Name" DisplayMemberBinding="{Binding FirstName}" Width="100" /> <GridViewColumn Header="Last Name" DisplayMemberBinding="{Binding LastName}"/> </GridView> </ListView.View> </ListView> 部分答案: 感谢Kjetil,GridViewColumn.CellTemplate工作良好,自动宽度的工作,当然,但是当ObservativeCollection“集合”更新列长度较长的数据,列大小不会自我更新,这只是一个解决scheme数据的初始显示: <ListView Name="lstCustomers" ItemsSource="{Binding Path=Collection}"> <ListView.View> <GridView> <GridViewColumn Header="ID" Width="Auto"> <GridViewColumn.CellTemplate> <DataTemplate> <TextBlock Text="{Binding Id}" TextAlignment="Right" Width="40"/> </DataTemplate> </GridViewColumn.CellTemplate> </GridViewColumn> <GridViewColumn Header="First Name" DisplayMemberBinding="{Binding […]

使用填充重新定位ListView的滚动条

我有一个ListView填充右侧(和左侧)。 目前列表看起来像这样: —————– | | ROW | | | |————-| | | | ROW | | | |————-|#| | | ROW |#| | |————-| | | | ROW | | | —————– | 最右边的行是屏幕的边缘,其中#是滚动条,右边是右侧的空白,是ListView的填充。 我的滚动条是这样的填充右边: _ —————– | | | ROW | | | |—————| | | | ROW | |#| |—————| |#| | ROW […]

Android ListView滚动到顶部

我有一个自定义行的ListView 。 当任何这些行被点击时,ListView的数据被重新生成。 我希望列表滚动到顶部发生这种情况。 我最初尝试在每行的OnClickListener使用setSelection(0)来实现这一目标,但不成功(我相信因为当数据无效时ListView失去滚动位置 – 所以我对setSelection的调用被取消了。虽然ListView决定在无效后滚动到哪里)。 我所知道的唯一工作解决scheme是Romain Guy在这里提供的: http : //groups.google.com/group/android-developers/browse_thread/thread/127ca57414035301 它涉及( View.post )对_listView.setSelection(0)的调用。 我发现这performance相当差。 新生成的列表显示其滚动位置不变,并且在滚动返回顶部之前存在相当大的延迟。 有没有更好的方法来实现这个function? 任何帮助将非常感激。 谢谢!

在ListView中隐藏页脚视图?

我有一个ListView 。 它后面的数据是从互联网上获取的,每当用户滚动到底部时,以10-30个项目为单位。 为了表明它正在加载更多的项目,我使用addFooterView()来添加一个简单的视图,显示“正在加载…”消息和微调。 现在,当我没有数据(无法获取更多数据)时,我想隐藏该消息。 我试图做到: loadingView.setVisibility(View.GONE); 不幸的是,虽然这确实隐藏了这个观点,但它留下了空间。 即我结束了一个大的空白处,“加载”消息曾经是。 我怎样才能正确地隐藏这个观点呢? 我不能使用removeFooterView()因为我可能需要再次显示它,在这种情况下,我不能再调用addFooterView() ,因为已经在ListView上设置了适配器,并且不能调用addHeaderView() / addFooterView()设置适配器后。