API LEVEL 11
1.使用ListFragment可实现包含Listiew的Fragment
2.在Fragment的布局中必须包含id "@android:id/list"(在代码中则是list)的Listview
3.只能使用SimpleAdapter或者SimpleCursorAdapter作为适配器
4.直接使用ListFragment的setListAdapter()来设置适配器【不要给ListView设置】
5.ListView点击事件的监听,重写ListFragment的onListItemClick(ListView l, View v, int position, long id)方法
1)新建ListFragment的布局fragment1.xml
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:gravity="center" android:text="Titles" /> <ListView android:id="@id/android:list" android:layout_width="fill_parent" android:layout_height="wrap_content" ></ListView> </LinearLayout>
2)新建Fragment继承自ListFragment,命名为Fragment1。
import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import android.app.Activity; import android.os.Bundle; import android.support.v4.app.ListFragment; import android.util.Log; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.ListView; import android.widget.SimpleAdapter; import android.widget.TextView; import android.widget.Toast; /** * @描述 在Fragment中要使用ListView,就要用ListFragment * */ public class Fragment1 extends ListFragment { private String TAG = Fragment1.class.getName(); private ListView list ; private SimpleAdapter adapter; /** * @描述 在onCreateView中加载布局 * */ @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View view = inflater.inflate(R.layout.fragment1, container,false); list = (ListView) view.findViewById(android.R.id.list); Log.i(TAG, "--------onCreateView"); return view; } @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); b = savedInstanceState; Log.i(TAG, "--------onCreate"); String[] list = {"Class 1","Class 2","class 3","Class 4","Class 5"}; adapter = new SimpleAdapter(getActivity(), getData(list), R.layout.item_list, new String[]{"title"}, new int[]{R.id.title}); setListAdapter(adapter); } @Override public void onListItemClick(ListView l, View v, int position, long id) { super.onListItemClick(l, v, position, id); System.out.println(l.getChildAt(position)); HashMap<String, Object> view= (HashMap<String, Object>) l.getItemAtPosition(position); System.out.println(view.get("title").toString()+"+++++++++title"); Toast.makeText(getActivity(), TAG+l.getItemIdAtPosition(position), Toast.LENGTH_LONG).show(); System.out.println(v); System.out.println(position); } private List<? extends Map<String, ?>> getData(String[] strs) { List<Map<String ,Object>> list = new ArrayList<Map<String,Object>>(); for (int i = 0; i < strs.length; i++) { Map<String, Object> map = new HashMap<String, Object>(); map.put("title", strs[i]); list.add(map); } return list; } @Override public void onActivityCreated(Bundle savedInstanceState) { super.onActivityCreated(savedInstanceState); Log.i(TAG, "--------onActivityCreated"); } @Override public void onAttach(Activity activity) { super.onAttach(activity); Log.i(TAG, "----------onAttach"); } }
3)新建Activity,继承自FragmentActivity,将Fragment添加到Activity中。命名为FragmentsActivity。
public class FragmentsActivity extends FragmentActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_fragments); Display display = getWindowManager().getDefaultDisplay(); Fragment1 f1 = new Fragment1(); FragmentManager manager = getSupportFragmentManager(); manager.beginTransaction().add(R.id.fragments, f1).commit(); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.fragments, menu); return true; } }
效果图:
相关推荐
综上所述,"简单笔记本功能"是一个基础的文本笔记应用,其核心功能围绕创建、编辑和查看笔记,使用ListView组件展示笔记列表。对于开发者来说,实现这样的应用涉及到Android UI设计、数据管理以及事件监听等多个方面...
这篇“Android Training学习笔记——Navigation 参考源码(ListView版)”深入探讨了如何使用Navigation构建一个基于ListView的导航系统。我们将从以下几个方面来详细讨论这个主题: 1. **Navigation组件简介** ...
Android 基础笔记 Android 基础笔记是 Android 开发的入门知识点总结,涵盖了 Android 开发的基础知识点,从 Android 发展史到自定义 ContentProvider 的实现。 一、Android 发展史 Android 的发展史可以追溯到 ...
【标题】"黑马程序员安卓 笔记代码(包含源码) 第76期" 提供的是安卓开发的相关学习资料,其中包含了源码,这通常意味着我们可以深入理解代码的实现细节和设计思路。作为第76期,这可能是一个长期系列教程的一部分...
在本篇Android学习笔记中,我们将探讨如何建立自己的ListView,即创建一个自定义的ListView子类,以便实现特定的UI样式和功能。这通常涉及到自定义Adapter和布局。 1. **自定义ListView子类** - 首先,我们需要...
这篇笔记将深入讲解这两个概念以及它们的使用方法。 Fragment是Android 3.0(API级别11)引入的一个重要特性,它是一个可嵌入到Activity中的UI片段。Fragment有自己的生命周期,可以独立于Activity进行操作,但同时...
1. **用户界面(UI)设计**:使用XML布局文件来定义屏幕上的组件,如EditText用于输入文本,Button用于触发动作,ListView或RecyclerView用于显示条目列表。设计师需要遵循Material Design指南,确保应用具有良好的...
3. **Android笔记应用的基本结构** - **MainActivity**: 应用的主要入口,通常负责初始化界面和处理用户交互。 - **NoteActivity/EditorActivity**: 用于创建和编辑笔记的活动,可能包括输入框、编辑器和保存功能...
你需要熟悉Android的布局管理器(如LinearLayout、RelativeLayout、ConstraintLayout)以及各个UI组件(TextView、EditText、ListView、RecyclerView等)的使用。 5. **Activity与Intent** Activity是Android应用...
在Android开发中,ListView是一种常用的组件,用于展示大量的列表数据。ListView的一个常见需求是实现下拉刷新功能,以便用户可以获取最新的数据。本教程将详细讲解如何在Android中实现ListView的下拉刷新功能,主要...
android仿印象笔记框架建立一个医生创建3种病例的客户端 viewpager+fragment+自定义的actionbar实先高仿印象笔记的登陆注册界面 用slidemenu 实现左右滑动界面 左界面高仿印象笔记 实现三种病例的创建(文本病例,照片...
一种替代方案是将父ListView的每个Item作为一个简洁的摘要展示,当用户点击Item时,跳转到一个新的Activity或Fragment来显示详细信息和操作。这种方法既保持了良好的界面清晰度,也提供了良好的用户体验。总的来说,...
这份“Android详细笔记”涵盖了从基础到进阶的各种知识点,旨在帮助读者深入理解Android开发技术。 一、Android系统架构 Android系统由五层结构组成:Linux内核、硬件抽象层、系统运行库、应用程序框架以及应用程序...
这部分可能涵盖了更深入的用户界面编程,比如使用Adapter将数据绑定到ListView或RecyclerView,自定义View,动画效果,触摸事件处理,以及如何使用碎片(Fragment)来支持多屏幕适配。UI编程是Android开发中的重要...
为了自定义列表项的显示样式,可以创建一个新的布局文件并传递给ArrayAdapter的构造函数,而不是使用系统默认的`android.R.layout.simple_list_item_1`。 总结: 这两个基础案例展示了Android应用开发中的关键概念...
这是我的安卓学习笔记。 开始时间:2016-9-11 计划:一个半月 文章目录: 基础知识 1、Android01--搭建Android开发环境 2、Android02--认识Activity 3、Android03--Context和Application 4、Android04--Android服务 ...
12. **Android性能优化**:包括内存优化、UI流畅性、电量管理等,比如使用WeakReference防止内存泄漏,使用ViewHolder模式提高ListView性能。 13. **Gradle构建系统**:Android项目通常使用Gradle进行构建,学会...
【安卓基础笔记】是针对初学者的一份详细教程,旨在帮助读者掌握Android应用开发的基本概念、原理和常用控件。这份笔记是进入Android高级开发前的必备读物,旨在为学习者打下坚实的理论和实践基础。 在Android开发...
【Android 初学者学习笔记】 Android 是一个基于Linux内核的开源移动操作系统,主要用于智能手机和平板电脑,由Google公司领导的开放手机联盟开发并维护。本篇笔记将为初学者提供一些关键的学习点,帮助快速掌握...