毕设ing|【翻译】部分UI掘进之路

当个搬运工吧,如果能帮到你的,也算是我的荣幸啦。。。。嘿嘿。如果您是原作者的话,抱歉啦,都没经过允许就给搬上来了。。。侵删!

1)怎样在fragment中调用findviewByid的方法呢?似乎这个方法只能在MainActivity中调用一样。其实不然,在fragment中也是可以调用的。

这样来整

以下内容摘自:

http://blog.csdn.net/kwinwo/article/details/51111798

当然可以,使用getView()方法就OK了,因为这个方法最终会返回当前fragment的根视图。

Button btn = (Button) getView().findViewById(R.id.btn);

但是你应该知道要在此之前使用onCreateView来创建视图吧。

    @Nullable

    @Override

    public ViewonCreateView(LayoutInflater inflater, ViewGroup container, BundlesavedInstanceState) {

        returninflater.inflate(R.layout.fragment, null);

    }

而如果你用inflate方法自己实例化一个view,比如这样:

    @Nullable

    @Override

    public ViewonCreateView(LayoutInflater inflater, ViewGroup container, BundlesavedInstanceState) {

        View view =inflater.inflate(R.layout.fragment, container, false);

    }

那么就不是再继续使用getView()了,取而代之的是:

Button btn = (Button) view.findViewById(R.id.btn);

这里的view就是之前实例化的View对象了。

转自:https://yq.aliyun.com/articles/875

2)  怎样在fragment中使用listview?

要点:

Fragment的布局中必须包含id "@Android:id/list"(在代码中则是list)Listview

fragement要extend  ListFragment而不是fragment。

只能使用SimpleAdapter或者SimpleCursorAdapter作为适配器。

直接使用ListFragmentsetListAdapter()来设置适配器。

来自这里:

Fragment中使用listview -θ..θ的专栏 -博客频道 - CSDN.NET http://blog.csdn.net/u014079441/article/details/37760305

3)  在上面的这种条件下,用simpleadapter又该怎么来用呢?

你得知道SimpleAdapter几个参数的意思

以下内容来:

Fragment中调用SimpleAdapter问题 -hack8的专栏 - 博客频道 - CSDN.NET http://blog.csdn.net/hack8/article/details/24838399

在Fragment中使用ListView的时候,需要使用适配器,在调用SimpleAdapter的时候,传递的参数需要注意。首先看SimpleAdapter的函数定义

SimpleAdapter(Context  context,List<? extends Map<String, ?>>  data, int resource,String[]  from, int[] to)

      参数:

      1,context:上下文。

      2,data:基于Map的list。Data里边的每一项都和 ListView里边的每一项对应。Data里边的每一项都是一个Map类型,这个Map类里边包含了ListView每一行需要的数据。

      3,resource :就是一个布局layout,可引用系统提供的,也可以自定义。

      4,from:这是个名字数组,每个名字是为了在 ArrayList数组的每一个item索引Map<String,Object>的Object用的。即 map 中得key值

      5,to:里面是一个TextView数组。这些 TextView是以id的形式来表示的。例如:Android.R.id.text1,这个text1在layout当中是可以索引的。

一般上下文context使用this指针,但是在Fragment中会报错,需要使用如下的方式进行调用。

 

[java] view plain copy

 print?

1.  SimpleAdapter listItemAdapter=new SimpleAdapter(  

2.                  getActivity(),  <strong><span style="color:#ff6666;">//这里要使用此,这样才不会报错。</span></strong>            

3.                  listItem,  

4.                  R.layout.fr_events_grid,  

5.                  new String[]{"ItemTitle","ItemMessage","ItemImage"},  

6.                  new int[]{R.id.fr_events_list_empty_view_title,R.id.fr_events_list_empty_view_message,R.id.fr_events_list_empty_view_image_view}  

7.                  );  

8.           listView.setAdapter(listItemAdapter);  

4)在为其加载适配器adapter的时候,遇到的NullPointer问题

【Fragment精深系列5】fragment findViewById()返回null完全解析 - 安诺爱思考 - 博客频道 -CSDN.NET http://blog.csdn.net/a910626/article/details/46011737

遇到的Fragment中使用setAdapter()设置ListView报空指针解决方案 - eclothy的专栏 - 博客频道 - CSDN.NET http://blog.csdn.net/eclothy/article/details/22960715

5)在listview中加载自定义的,非viewPager类的轮播图的时候,遇到的问题,
自己查了下资料,结合之前写过的一些开发demo,这样来写的

然后就遇到了这种烦人的问题

 

后来这样把它解决了

参考了这里
android LayoutParams 简单说明 理解 示例 - 低级写手 我自由了 - ITeye技术网站 http://byandby.iteye.com/blog/816718

ListView添加头布局和脚布局 - 阳光灿烂的日子的博客 - 博客频道 - CSDN.NET  http://blog.csdn.net/qq_35114086/article/details/53326293

6) 怎样获取到listview中item的信息呢?
关于android listview 的onItemClick方法-CSDN论坛-CSDN.NET-中国最大的IT技术社区 http://bbs.csdn.net/topics/390532500
一种参考是:

我自己是这样来写的

时间来到了 22:20------- à 累!继续加油咯,小伙子,今天就休息下吧。



  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值