Day2 & Day3

  昨天上午复习了ListView,写了两个练手的单选和多选,看了SimpleAdapter,它比BaseAdapter在新建时多了两个参数,new String90{};new int[]{}。

  虽然listView对于现在理解了的我来说挺简单的,但是两个小实验还是写了整整半天的时间。

  感觉代码的第一重境界就是看的懂,理解的了意思;第二重就是能够在较少提示的情况下完成代码。第一重到第二重的距离看上去很短,其实也还是有点难度的,需要大量的练习和时间。就是我们高中时的题海战术一样,又像如果在公司中常常用到这个组件会用的很熟练一样,都是熟能成巧啊。

  所以以后有时间的话,可以更多的选择写写基本的东西呢,也挺有快感的哈。不知道这种想法是不是很不成熟啊,哈哈。

  昨天中午收到了宁波银行的面试通知,导致整个下午都在看面经啊啥的,没有很好的学习。通知1:15分开始的面试。3点多才开始,今天一整天的时间也大致都没了Zzz.

  一起去面试的小伙伴毕业设计都做好了,然后就很体现我毕设的紧迫性。挺有压力的,比较紧张。适度压力吧,前置压力。

  今天顿时有种,我要日以继夜的写代码” 的觉悟。

  晚上看了ViewPager,根据慕课网上的(微信60.主界面)代码把它第一个小实验ViewPager实现了,第二个View还没跑通有点问题。

  我的毕设的第一个界面就要实现这种Tab导航栏。可以借鉴这一块,有个难点是还不了解它能不能指向4个Activity,而不是四个View,感觉Activity的话,写起来会比较有条理一点哈。明天去看看有没有关于ViewPager的书吧,仔细看一下哈。

  

  我来回忆一下哈:

    最简单的xml中,它只写了ViewPager的组件,就和最普通的TextView一样写。

    因为要用到Fragment,所以写了TabFragment类。这里的类其实就是实现一个TextVIew。突然想到,能不能让这个类真正的实现一个完整的Fragment呢,Fragmenthe Activity也没有功能上的差别是吧?对啊,本来就是应该用Fragment而不是Activity的!那怎么实现要每一Tab对应一个Fragment呢。想想,想想。

    然后在MainActivity中,定义了ViewPager,存Fragment的ArrayList:mTabs,每个Tab页的名称 mTitles,ViewPagers的适配器mAdapter。

    private ViewPager mViewPager;
    private List<Fragment> mTabs = new ArrayList<Fragment>();//把Fragment添加到这个list中
    private String[] mTitles = new String[]
            { "First Fragment !", "Second Fragment !", "Third Fragment !",
                    "Fourth Fragment !" };
    private FragmentPagerAdapter mAdapter;

  今天还学到一点就是,慕课上的老师,它的代码没有像书上一样,把一股脑的所有viewPager的取值啦,Adapter的实现啦全部写在onCreat方法中,而是在onCreat方法中调用了initView(),initData()方法,然后再到方法中去实现。虽然没有本质的区别,但明显这是一个更好的代码习惯。

  initView()很简单:

    private void initView()
    {
        mViewPager = (ViewPager) findViewById(R.id.id_viewpager);

    }

  initData()方法分两块,第一块是根据Tab页的名称,来决定Fragment中的TextView的值;第二块是实现Adapter。

private void initDatas()
    {
        for (String title : mTitles)
        {
            TabFragment tabFragment = new TabFragment();//给Fragment页面传TITLE的值。
            Bundle bundle = new Bundle();
            bundle.putString(TabFragment.TITLE, title);
            tabFragment.setArguments(bundle);
            mTabs.add(tabFragment);
        }

        mAdapter = new FragmentPagerAdapter(getSupportFragmentManager())
        {
            public int getCount()
            {
                return mTabs.size();
            }

            public Fragment getItem(int position)
            {
                return mTabs.get(position);
            }
        };
    }

    

  哎呀,想到了,在 for (String title : mTitles){...}这一块当中,根据不同的String名称t跳转到不同的Fragment,然后每个Fragment各自对应他们的layout.xml不就可以了么。明天去试下呀呀呀!

  今天晚上闭馆回来的路上,下着小雨,我还丢了伞。一起走的婷婷突然对我说,“你有没有听过一句话,目标明确的人走起路来都比较快呢。”

  

时间: 2024-09-30 06:37:21

Day2 & Day3的相关文章

python-第一块,笔记整理和学习内容复习(day1 - day2 - day3)

DAY1 学习内容: 今天是培训班开班第一天,第一天,了解了python的历史,发展前景,也喝了Alex老师的一大碗鸡汤.鸡汤是鲜的,然后学习还是要学得. 今天写了python的第一个程序,hello world.突然想起大学的时候学习c语言的时候,写的也是这个.此时此刻,新增所想确实,hello python,i'm coming. 笔记:大写代表常量,例如PIE: ASCII的起源,以及gb2312.gbk.gb18031和utf-8等编码的出生: 注释:单行用#,多行用'''   ''':

R语言rank函数详细解析

1.rank函数是什么 rank相关文档[1]可以译为"返回原数组(?)中各个元素排序(?)后的秩次(?)",表面上看确实可以得到次序,但对数组.排序.秩次交待不清. 2.rank函数使用情景 比如,在100米赛跑中,甲乙丙三人的成绩为6.8s, 8.1s, 7.2s,那么用rank函数排序获得名次: > rank(t <- c(6.8, 8.1, 7.2)) [1] 1 3 2 再如,甲乙丙三人考试得分为74,92,85,用同样方法取得名次会适得其反.当然,我们可以认为执

python15-day1课堂随机

print("Hello world") #变量定义:一个在内存储存数据的容器#意义:为什么有变量,因为它保存程序执行的中间结果或状态以供后面的低吗进行调用 day1 = 200+43+22+44+44day2 = 100+25+64+98+45+557day3 = 300 #数字不需要加引号 total = day1+day2+day3 print ("9月收入:" ,total) #字符串需要加引号 x = 4y = 5c = 20 - (x + y)print

WC滚粗记

Day0 上午,坐车去绍兴,陪外公外婆逛鲁迅故居(so tired). 下午滚去签到,然而老师已经帮忙签掉了...看了一眼寝室,感觉还行(空调质量很好) Day1 上午:听鏼爷讲课,感觉还能懂(事实证明是所有课里最可听的) 下午:rzz讲了一些蜜汁通信理论,讲了几张ppt就掉线...然后重连失败,开始睡觉:小火车讲了几道题,发现自己竟然还会做几题(其实也没几题),感觉还有救 Day2~Day3 冬眠...并没有听懂什么(?或者说有些听了也没什么用..) Day4 上午:松爷讲卡常..据说会考,然

java基础面试

 * 以下内容是我在准备java面试的时候觉得有用,面试官很可能会问的一些问题  * 内容(除了代码)详情来自网络(学习的时候遇到不会的百度的 (*^__^*) )  * 如果大家发现有什么地方不对,请告诉我.谢啦!!☆⌒(*^-゜)v 1:java的基础类型 Java语言提供了八种基本语言 boolean char byte 8位 short 16位 int float 32位 long double 64位 注意:String本身就是一个对象而不是基本数据类型,String的变量名是对Str

基于Android的计步器(Pedometer)的讲解(二)——柱状图分析

写正文之前,小小的吐槽一下,还有一个月就放假了,作业.考试.还有实习(研一,下半学期课不多,也不想在实验室)的考虑,最近基于hadoop的数据分析马上也要验收了,真的忙的"外焦里嫩"啊!目前定的方向是Android开发,所以想过年来了找一个Android的实习工作,提高一点在真正的项目中的经验. 好了,说了这么多废话,开始进入正题吧. 整个计步器的项目已经上传到github上了,感兴趣的朋友可以去看看(最好能给小弟我打颗星星哦~) https://github.com/29677751

day1-python学习

目录 1     Python介绍... 1 1.1         目前Python主要应用领域:... 1 2     python安装... 1 2.1         windows安装... 1 2.2         linux安装... 2 3     python基础实战... 3 3.1         PyCharm用到的快捷键... 3 3.2         打印hello world. 3 3.3         python解释器... 3 3.4         字

First day of Python

1.基础知识类 基础课程的课程清单 Python基础 7weeks 数据类型,流程控制,常用模块 函数,迭代器,装饰器 面向对象 网络相关部分编程 4~5weeks socket编程 生产者消费者模型 审计堡垒机系统的开发,WCGI的web基础开发 算法与设计模式 冒泡,二叉树,链表,哈希和图 Py Web框架 MVC,Django与Flask,权限管理开发 2. Python基本知识 指定一个Python的系统解释器 根据操作系统的不同,Windows和Linux指定系统解释器的方式并不相同.

python入门学习--2017.9.3

一 编程与编程语言 python是一门编程语言,作为学习python的开始,需要事先搞明白:编程的目的是什么?什么是编程语言?什么是编程? 编程的目的: #计算机的发明,是为了用机器取代/解放人力,而编程的目的则是将人类的思想流程按照某种能够被计算机识别的表达方式传递给计算机,从而达到让计算机能够像人脑/电脑一样自动执行的效果. 什么是编程语言? #上面提及的能够被计算机所识别的表达方式即编程语言,语言是沟通的介质,而编程语言是程序员与计算机沟通的介质.在编程的世界里,计算机更像是人的奴隶,人类