zoukankan      html  css  js  c++  java
  • Android Studio 开发 APP 初尝试

    首先下载好 Android Studio .将其启动方式放在侧边栏的方法如下:
    https://blog.csdn.net/u013447565/article/details/80304419
    https://blog.csdn.net/YiferHuang/article/details/86634589

    需要实现一个新闻APP.参考内容如下:
    https://blog.csdn.net/weixin_45934604/article/details/108954592
    https://www.cnblogs.com/snser/p/5700754.html
    https://blog.csdn.net/mayuko2012/article/details/73350672
    https://blog.csdn.net/weixin_36454562/article/details/117565943
    还有很多……

    注意

    1.如果在代码中用findViewById()找到对应部件进行修改,该部件在哪个view中,就用哪个view的findViewById()函数。

     比如该部件在layout1.xml中,就应该

    view1=getLayoutInflater().inflate(R.layout.layout1,null);
    Button myBtn=view1.findViewById(myButton);
    

    此时相应的context是view1.getContext().

    2.固定控件在屏幕顶部或底部的一种方法

     采用RelativeLayout布局,然后设置:

    android:layout_alignParentTop="true"
    

    或者

    android:layout_alignParentBottom="true"
    

     然后其余控件(比如,一个ScrollView)高度设置成 match_parent ,并设置 layout_marginTop=... 或者 layout_marginBottom=... 即可。ScrollView的话,还可写上 fillViewport="true"

    3.等待子线程结束

     调用 start() 方法后,记得调用 join() 方法等待子线程运行结束。要 catch 一个 InterruptedException .
     但是如果在子线程里通过 handler 传输了数据,就不知道 handler 何时调用,也没有 join() 这么方便的方法。

    4.ListView 及时更新

     在有更改之后,调用该 listView 使用的 adapter 的 notifyDataSetChanged 方法即可!

    5.ViewPager 翻页后,页面销毁的问题

     使用 viewPager 的 setOffscreenPageLimit() 方法设置预加载的页面数即可。
     也可以重写 instantiateItem 为空。但是我把它的 container.removeView(viewList.get(position)); 去掉之后,翻回之前的页面时就会发生错误。

    6.intent 传递实现了 Serializable 接口的对象时,是把对象的值复制了一份,而不是传引用!

    7.SmartRefreshLayout 嵌套 ScrollView 的滑动冲突

     按照这篇博客写了一个自定义 ScrollView .但还是没用。https://www.jianshu.com/p/5bd24eb926ca
     后来发现在布局文件里把 ScrollView 写在 SmartRefreshLayout 外面,只把撑起 ScrollView 的内容(我的是一个 ListView )放在 SmartRefreshLayout 的 Header 和 Footer 之间就行了!!!
    之后还有一些注意点,不一一列举了。
    最后完成后有一些瑕疵:
    1.切换分类后页面没有自动回到新闻列表开头。(因为只实现了重新加载新闻列表)
    2.搜索界面体验差,除“类别”以外,其余搜索条件输入之后不能看到自己之前输了什么。(因为担心直接呈现在button上会超过button宽度,带来一些问题。注意若想让几个button均匀铺满一行,就用weight来调各个button的权重而别限定宽度,否则在不同宽度的手机上会显示不良)
    3.视频播放状态下关闭该新闻详情页,视频没有自动停止,仍在播放。(此处直接用了第三方库,没注意在详情页Activity销毁的时候发消息停止视频)
    4.历史记录看一次加一次,允许重复。应该做成如果已经有对应历史记录,就将该记录调到最上方显示。
    5.没有实现取消收藏功能。

  • 相关阅读:
    Builder与Factory,殊途同归!
    IIS中的身份验证
    如何给项目选择合适语言(转)
    动态行转列
    ORACLE系统表大全(转)
    C# 操作Word文档(转)
    产品化思维之分层的思想
    开发管理目前开发工作的问题分析和诊断
    MongoDB数据插入、删除、更新、批量更新某个字段
    学习正则表达式
  • 原文地址:https://www.cnblogs.com/Narh/p/15222423.html
Copyright © 2011-2022 走看看