- 浏览: 253881 次
- 性别:
- 来自: 武汉
文章分类
- 全部博客 (195)
- android开发 (29)
- JAVA (3)
- android—Task (1)
- android—Folders (1)
- android—gallery (1)
- android—ListView (15)
- android—GridView (4)
- android—Notification (3)
- android—File (5)
- android—tabhost (3)
- android—uri (4)
- android—Shortcut (1)
- android—Imei (1)
- android—Vibrator (3)
- android—Voice (1)
- android 小案例练习 (2)
- android—Wifi (1)
- android—login (1)
- android—onKeyDown (1)
- android—Activity (12)
- android—onTouchEvent (2)
- android—thread (2)
- android—app (3)
- android—webview (2)
- android—Activity自动跳转 (2)
- android_sensor (1)
- android_URL (2)
- android—Googlemap (1)
- android TextView小练习 (1)
- android-apk (1)
- android -sqlite (2)
- Java -xml (1)
- rest (1)
- android-phone (2)
- android—image (7)
- android_intent (3)
- android——broadcastReceiver (2)
- Map (1)
- lock (0)
- android-background (2)
- android-cache (2)
- android-expandtab (2)
- android_UI控件实现 (0)
- android_viewfinderview (1)
- android-Popup (1)
- Android—TextView (0)
- Android-network (1)
- android_share (1)
- Android_pulldownview (0)
- android-Switch (1)
- android_actionbar (1)
- Android_scrollview (1)
- android_util (9)
- android-sparseArray (1)
- android_Adapter (1)
- Android—DatePicker (2)
- kjframeforandroid (1)
- DragSortListView (1)
- Afinal (1)
- Android-StaggeredGrid (1)
- SmoothProgressBar (1)
- ExplosionField (1)
- android-async-http (1)
- Android—circleindicator (1)
- android—stepsview (1)
- android—spanny (1)
- Android-ViewPager (2)
- android—pull layout (1)
- Android—time (1)
- PullToDismissPager (1)
- android—chart (1)
- android—pullzoomview (1)
- listviewfilter (1)
- andrAndroid-GIF (1)
- android—ListView,StickyScrollView (1)
- gradle (1)
- android—fragment (1)
- Android--Glide (2)
- Android - SharedPreferences (1)
- Android_imageview (2)
- dialog弹出框 (2)
- android-recyclerview (2)
- Android-Badger (1)
- android_dialog (2)
- android—RecyclerView (4)
- android TextView (1)
- android—topbar (1)
- android—轮播图效果 (1)
- Android—imageView (2)
- androidAndroid—button (1)
- 视频教程 (1)
- kotlin学习 (1)
- Android—tag (1)
- android—view (1)
- TabLayout (1)
- android-webView (1)
- rich-text (1)
- swiper标点样式 (1)
- image (1)
- ExpandableTextView (1)
- viewPager (0)
最新评论
-
龙哥IT:
把这些东西,放在一起,自己用的时候方便而已,不用到处找了
Android权限Uri.parse的几种用法 -
YURANUS_:
干货 哈哈哈
Android权限Uri.parse的几种用法 -
narutolzj:
楼主,AppUtils类是自定义的吗,找不到~~
获取安装的应用 -
black_smart:
...
Android权限Uri.parse的几种用法 -
liu_zheng:
博主 我想把文字换成图片 要怎么修改呢??
用linearLayout代替ListView
http://qsyz2002.blog.163.com/blog/static/7216669201143115331662/
其中日期标题部分视图布局:
view sourceprint?1 <?xml version=”1.0″ encoding=”utf-8″?> <LinearLayout xmlns:android=”http://schemas.android.com/apk/res/android” android:orientation=”vertical” android:layout_width=”fill_parent” android:layout_height=”10dip” android:background=”@drawable/section_background”> <TextView android:id=”@+id/section_title” android:layout_width=”fill_parent” android:layout_height=”match_parent” /> </LinearLayout>
带图片的条目布局部分:
<?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=”wrap_content” android:orientation=”horizontal” > <ImageView android:id=”@+id/image” android:src=”@drawable/p” android:layout_width=”wrap_content” android:layout_height=”wrap_content” /> <TextView android:id=”@+id/title” android:layout_width=”wrap_content” android:layout_height=”wrap_content” /> </LinearLayout>
问题在于,如何在ListView中既有标题条目又有内容条目。
这里用到了设计模式中的Iterator模式。在java代码中示例有Iterator,可以迭代ArrayList,HashSet等不同的数据结构对象。
ListElement是接口:
package com.easymorse.listview.customer; import android.content.Context; import android.view.LayoutInflater; import android.view.View; public interface ListElement { public int getLayoutId(); public boolean isClickable(); public View getViewForListElement(LayoutInflater layoutInflater, Context context, View view); }
其中:
- getLayoutId()返回布局的值;
- isClickable()返回是否可点击;
- getViewForListElement()返回视图对象。
这个接口有两个实现:
- SectionListElement,用于实现标题条目;
- ContentListElement,用于实现内容条目。
见SectionListElement代码:
package com.easymorse.listview.customer; import android.content.Context; import android.view.LayoutInflater; import android.view.View; import android.widget.LinearLayout; import android.widget.TextView; public class SectionListElement implements ListElement { private String text; public void setText(String text) { this.text = text; } @Override public int getLayoutId() { return R.layout.section; } @Override public boolean isClickable() { return false; } @Override public View getViewForListElement(LayoutInflater layoutInflater, Context context, View view) { LinearLayout layout = (LinearLayout) layoutInflater.inflate(getLayoutId(), null); TextView textView=(TextView) layout.findViewById(R.id.section_title); textView.setText(text); return layout; } }
见ContentListElement代码:
public class ContentListElement implements ListElement { private String title; public void setTitle(String title) { this.title = title; } @Override public int getLayoutId() { return R.layout.item; } @Override public View getViewForListElement(LayoutInflater layoutInflater, Context context, View view) { LinearLayout layout = (LinearLayout) layoutInflater.inflate( getLayoutId(), null); TextView textView = (TextView) layout.findViewById(R.id.title); textView.setText(title); return layout;
ListView需要ListAdapter的实现。在这里是直接集成BaseAdapter来实现的。用于交给ListView生成出列表。代码:
public class CustomerListAdapter extends BaseAdapter { private Context context; protected ArrayList<ListElement> resultList; private LayoutInflater layoutInflater; public CustomerListAdapter(Context context) { super(); this.context = context; this.layoutInflater = (LayoutInflater) context .getSystemService(“layout_inflater”); this.resultList = new ArrayList<ListElement>(); } @Override public int getCount() { return this.resultList.size(); } @Override public Object getItem(int position) { return this.resultList.get(position); } @Override public long getItemId(int position) { return position; } @Override public View getView(int position, View view, ViewGroup parent) { return this.resultList.get(position).getViewForListElement( layoutInflater, context, view); } public void addList(List<ListElement> elements) { this.resultList.addAll(elements); } @Override public boolean isEnabled(int position) { return this.resultList.get(position).isClickable(); } public void addSectionHeaderItem(String text) { SectionListElement element = new SectionListElement(); element.setText(text); this.resultList.add(element); } }
在Activity中创建CustomerListAdapter以及设置它的代码部分:
CustomerListAdapter adapter = new CustomerListAdapter(this); adapter.addSectionHeaderItem(“2002-3-1″); ArrayList<ListElement> elements = new ArrayList<ListElement>(); for (int i = 0; i < 5; i++) { ContentListElement element = new ContentListElement(); element.setTitle(“哈利波特第” + (i+1) + “集”); elements.add(element); } adapter.addList(elements); adapter.addSectionHeaderItem(“2002-2-2″); elements = new ArrayList<ListElement>(); for (int i = 0; i < 3; i++) { ContentListElement element = new ContentListElement(); element.setTitle(“指环王第” + (i+1) + “集”); elements.add(element); } adapter.addList(elements); this.setListAdapter(adapter);
这里ListActivity,还需要注意两件事情,Activity要继承ListActivity。另外,在layout中:
ListView的id要用系统自带的
发表评论
-
不同的操作,加载更多样式不同
2018-06-06 16:24 711添加包: implementation 'com.scw ... -
列表滚动底部,自动显示发回顶部按钮
2017-08-08 16:00 581AutoScrollBackLayout 在ListVie ... -
ExpandableLinearLayout列表展开和收起功能
2017-07-17 16:10 968之前接触过几个类似的功能,展开和收起,都是自己在适配器里面 ... -
WaterDropListView实现ios7仿IOS“雨滴”拖拽的下拉刷新
2016-05-28 15:13 528WaterDropListView实现ios7下拉刷新和翻页 ... -
Listview列表滑动删除效果
2015-03-05 15:43 1496package com.ryg.slideview; ... -
点击实现 图标 晃动效果
2014-03-26 10:26 944定义Animation Animation sha ... -
下拉刷新功能
2012-03-15 15:08 2201参照别人的代码,然后根据需求,拉过来的,很实用 1。首 ... -
ListView动态分页的时候,定位滚动条的位置
2011-11-23 11:25 48781。找到每一页的最后一条数据的位置 public void ... -
用linearLayout代替ListView
2011-11-02 12:18 12500因为一个界面上面的内容太多,下面ListView查看不到,想在 ... -
ListView-自动加载数据一点代码
2011-10-26 15:37 1709private List<Map<String, ... -
设置ListView每个item点击背景图片设置
2011-10-26 15:31 7736利用itemview,fire,line来 ... -
ExpandableListView基本需要
2011-10-26 15:26 1403展开 int groupCount = viewAdapte ... -
ListView--BaseAdapter
2011-10-09 17:07 975自定义Adapter继承BaseAdapter http:// ... -
ListView的动态加载-很简单的Demo
2011-10-08 10:01 8033ListView的动态加载,想必大家在网上都看过很多资料了。我 ...
相关推荐
在实现多栏目显示时,你可能需要自定义TListView的ItemAppearance或ItemTemplate,这样每个列表项可以根据你的需求显示多个字段的信息。例如,你可以创建一个ItemAppearance,包含标题、详细描述、日期等不同栏目,...
本教程将聚焦于模拟新浪微博的“随便看看”栏目,这个栏目通常显示一系列动态、文章或者图片,用户可以滑动屏幕查看更多的内容。通过实现ListView,我们可以为用户提供一个高效且交互性强的界面。 首先,我们需要...
在MFC编程中,ListView控件是常用的可视化组件,它用于显示列表数据,通常包括多个列,每列有一个标题(栏目头)。用户可以方便地通过鼠标操作调整列宽,但有时为了保持界面的一致性和控制用户体验,我们可能需要...
实现这种效果的一个方法是将ListView的每个子项视为一个HorizontalScrollView,这样可以实现横向的无限滚动。每个子项内部再包含一个ScrollView,用于展示股票的详细信息,如K线图、实时价格等,这样可以实现纵向...
这通常意味着我们需要实现一个滚动列表,每个条目代表一个栏目,可能包括图片和文字描述,且具有选中状态的视觉反馈。我们可以使用RecyclerView或者HorizontalScrollView来实现这个滚动列表,同时配合Adapter来填充...
2. **布局设计**:每个ListView项通常包含多个元素,如头像、用户名、时间、内容等。我们可以创建一个XML布局文件(如`sina_list_item.xml`)来定义这些元素,并在`getView()`方法中使用`LayoutInflater`将该布局...
在安卓开发领域,"类似搜狐新闻安卓版栏目定制"是一个常见的需求,涉及到多个技术点,包括用户界面设计、数据加载、列表视图优化等。在这个项目中,开发者需要创建一个与搜狐新闻应用类似的用户界面,并允许用户定制...
在`RecyclerView`中,每个条目可以代表一个栏目,通过点击条目进入相应的新闻列表页面。 6. **上下拉刷新**: 上下拉刷新是移动应用中常见的交互设计,用于加载更多数据或更新列表。在`RecyclerView`中,可以集成如`...
- **(2)** 内容列表设计:每个新闻分类下都有一个ListView,展示新闻标题、摘要、来源和发布时间。使用TextView和Button构建元素,布局清晰。 - **(3)** 新闻内容界面:设计用于显示新闻详细内容的界面,可能包含...
- DataList的模板包括ItemTemplate(每个数据项的默认模板)、HeaderTemplate(头部模板)、FooterTemplate(尾部模板)等。本讲主要讲解了如何编辑这三种模板以呈现新闻标题列表。 - 模板编辑是难点,需要学生...
本示例提供的"android 多级下拉菜单"是一个实现三级菜单的示例,它允许动态添加菜单项,并在用户选择第三级菜单时显示所选内容所属的一级、二级和三级栏目名。通过这种方式,开发者可以构建出灵活且易于使用的导航...
多栏位ComBox组件则解决了这个问题,它可以显示多列数据,每个栏目可以显示不同类型的信息,比如:姓名、年龄、性别等,这样用户可以在一个控件中查看到更丰富的信息。 ListComBox和ListViewComBox可能是这个组件的...
本项目共分为六个任务,每个任务都包含了具体的学习内容和实战演练时间,旨在通过实际操作加深理解和巩固知识。例如,任务1涉及网站结构分析与设计,包括布局设计、文件类型识别以及Web.config的配置;任务2和3可能...
7. **开发流程**:开发一个Android新闻客户端通常涉及需求分析、设计、编码、测试和发布等多个阶段。开发过程中,需要熟练运用Android Studio等开发工具,理解Android编程的基本概念,如意图(Intent)、服务(Service)...
- **功能性需求**:首页包含多个子栏目,如荆州、社会、娱乐、体育等,每个子栏目都有头条和详细新闻列表。内容浏览区支持左右滑动,便于用户在不同新闻之间切换。用户可自由切换阅读模式,同时支持将喜欢的新闻...
- **多类别导航**:应用界面需设有多个新闻类别导航,例如“首页”、“荆州”、“社会”、“娱乐”、“体育”等,并在每个类别下展示头条新闻和一系列详细的新闻列表。 - **个性化阅读体验**:允许用户自定义新闻...
注:以上三个案例,上课时会根据每个班的课堂反馈选择其中一个案例予以讲解学习。 7、如鹏网项目(9天) 查看项目演示 功能点 站内搜索、栏目管理、视频播放(完全模仿优酷视频页面)、焦点图、静态页面生成(新浪、...
- 可以打印多个PageFooter,方便制作页小计. v.2.1(Build 2001/10/18) - 大大增强了TRMFormReport功能,可以与ScreenReport, Dev ExpressPrinting System媲美; - TRMFormReport增加了表格的自动缩放功能....
很常见的一个应用场景——显示图片:如果显示一张图片,我们用一个 UIImageView 足矣,如果要显示多张图片,并且可以左右滚动,最简单的办法是用一个 UIScrollView 包含多个 UIImageView, 但是这样带来的后果则是,...