1.EditText 中将光标移到文字末尾:

  1. EditText mEdit = (EditText)this.findViewById(R.id.EditText01);
  2. mEdit .setText("abcdefg");
  3. Editable b = mEdit .getText();
  4. mEdit .setSelection(b.length());

2.Android TextView文字横向自动滚动(***灯效果)

(1)重写TextView

  1. public class AlwaysMarqueeTextView extends TextView {
  2. public AlwaysMarqueeTextView(Context context) {
  3. super(context);
  4. }
  5. public AlwaysMarqueeTextView(Context context, AttributeSet attrs) {
  6. super(context, attrs);
  7. }
  8. public AlwaysMarqueeTextView(Context context, AttributeSet attrs,int defStyle) {
  9. super(context, attrs, defStyle);
  10. }
  11. @Override
  12. public boolean isFocused() {
  13. return true;
  14. }
  15. }

(2)在布局中

  1. <com.kayang.views.AlwaysMarqueeTextView
  2. android:id="@+id/txtHeadTitle"
  3. android:layout_width="wrap_content"
  4. android:layout_height="fill_parent"
  5. android:layout_weight="9"
  6. android:background="@android:color/transparent"
  7. android:ellipsize="marquee"
  8. android:focusable="true"
  9. android:gravity="center"
  10. android:focusableInTouchMode="true"
  11. android:singleLine="true"
  12. android:textColor="#ffffff"
  13. android:textSize="20dp"
  14. android:marqueeRepeatLimit="marquee_forever"
  15. android:scrollHorizontally="true" />

只需以上的两步,你的文字就会跑起来啦!

3.布局 android:layout_xxx="0.0dip"和android:layout_weight 的搭配使用:

要想使子控件成比例,

在竖直方向:用android:layout_height="0.0dip"和android:layout_weight;

在水平方向:用android:layout_width="0.0dip"和android:layout_weight;

此时android:layout_weight越大在相应方向占的比例就越大。

4.adapter.notifyDataSetChanged更新数据时没刷新页面,则将你请求的新数据按照以下的三句话来处理即可,注意这种情况主要是List这样的数据:

  1. usersList.clear();
  2. usersList.addAll(query(......));
  3. adapter.notifyDataSetChanged();

5.ListView的item中包含有GridView或者ListView时,会导致Item的点击事件失效?

解决方案:在Adapter中的布局的第一层加 android:descendantFocusability="blocksDescendants",如此就可以解决了焦点的问题。

6.GridView设置Item的间距

水平间距:android:horizontalSpacing="5dp"
垂直间距:android:verticalSpacing="2dp"

7.EditText中设置输入内容与EditText的头部的间距:

android:paddingLeft="10dp" ;

8.如何生成二维码让用户扫描下载自己的APK?

解决:只需要在网上下载一个二维码生成器,将服务器下载apk 的地址输入后生成一个二维码的图标,用户只需扫描该二维码即可下载。

9.随时随地退出程序:

(1)新建一个ActivityCollector类作为活动管理器。

  1. public class ActivityCollector {
  2.  
  3. public static List<Activity> activities=new ArrayList<Activity>();
  4.  
  5. public static void addActivity(Activity activity) {
  6. activities.add(activity);
  7. }
  8.  
  9. public static void removeActivity(Activity activity) {
  10. activities.remove(activity);
  11. }
  12.  
  13. public static void finishAll() {
  14. for (Activity activity: activities) {
  15. if (!activity.isFinishing()) {
  16. activity.finish();
  17. }
  18. }
  19. }
  20.  
  21. }

(2)添加和移除activity

  1. public class BaseActivity extends Activity {
  2.  
  3. @Override
  4. protected void onCreate(Bundle savedInstanceState) {
  5. // TODO Auto-generated method stub
  6. super.onCreate(savedInstanceState);
  7. setContentView(R.layout.activity_main);
  8. ActivityCollector.addActivity(this); //将当前正在创建的activity加入到ActivityCollector
  9. }
  10.  
  11. @Override
  12. protected void onDestroy() {
  13. // TODO Auto-generated method stub
  14. super.onDestroy();
  15. ActivityCollector.removeActivity(this); //马上要销毁的activity从ActivityCollector移除
  16. }
  17. }

(3) 销毁全部的activity

  1. public class SignOutActivity extends Activity {
  2.  
  3. @Override
  4. protected void onCreate(Bundle savedInstanceState) {
  5. // TODO Auto-generated method stub
  6. super.onCreate(savedInstanceState);
  7. setContentView(R.layout.signout);
  8. Button button=(Button) findViewById(R.id.button);
  9. button.setOnClickListener(new OnClickListener() {
  10.  
  11. @Override
  12. public void onClick(View v) {
  13. // TODO Auto-generated method stub
  14. ActivityCollector.finishAll();
  15. }
  16. });
  17. }
  18. }

app中的所有的activity都继承BaseActivity。

10.控件不会随着键盘上移

在manifest的activity中,添加 android:windowSoftInputMode="adjustPan" 属性

Android开发之实用小知识点汇总-2的更多相关文章

  1. Android开发之实用小知识点汇总-1

    1.去掉android屏幕中的actionbar: this.requestWindowFeature(Window.FEATURE_NO_TITLE);// 去掉标题栏 //这个是全屏幕显示的代码 ...

  2. Android开发效率的小技巧

    提高eclipse使用效率(二) 提高Android开发效率的小技巧   XML文件的代码提示 adt中也有xml文件的代码提示,为了让提示来的更加猛烈,我们还要设置一下 打开eclipse - Wi ...

  3. 我对android开发的一点小感悟小看法

    “Android”,“Android开发”等等这些词成了时下最热的词,也是时下大众最关注最吸引人眼球的话题,当然,最热门的行业也意味着高薪,好的就业环境,但同时也意味着强大的竞争力! Android系 ...

  4. 几款Android开发人员必备小工具

    在这里我介绍一下我常常在Android Studio里面使用的小工具吧,这些工具都能够在plugin里面搜索到. (当然了哈.我也是从网上找的.用着挺方便的,在这里总结一下) Gsonformat: ...

  5. android开发中遇到的问题汇总【九】

    244.http请求的url含有中字符时.须要Uri编码.Uri.encoder() 245.使用androidstudio时,不知道什么原因svn不见了 Android Studio missing ...

  6. 10个关于Android开发的实用教程

    本文为致力于Android应用的开发人员精选了几个不错的实用教程,无论是初学者还是专业开发人员都应该能够从中获益.这些教程中有不少是关于绘图和地址服务运用的,另外一些则是SDK相关的.希望对大家有所帮 ...

  7. 新人学习Android开发遇到的小问题总结

    1. IDE搭建: 搭建android的IDE时,先注意是什么版本的系统,64/32位系统. 通常使用的是Eclipse for android,Android Studio由于还需要FQ,网速慢,所 ...

  8. Android开发环境——SDK相关内容汇总

     Android开发环境将分为SDK相关内容.Eclipse ADT相关内容.模拟器AVD相关内容.调试器DDMS相关内容.日志LogCat相关内容.连接驱动ADB相关内容.内存泄露检测工具MAT相关 ...

  9. 年度巨献-WPF项目开发过程中WPF小知识点汇总(原创+摘抄)

    WPF中Style的使用 Styel在英文中解释为”样式“,在Web开发中,css为层叠样式表,自从.net3.0推出WPF以来,WPF也有样式一说,通过设置样式,使其WPF控件外观更加美化同时减少了 ...

随机推荐

  1. 解读Python内存管理机制

    转自:http://developer.51cto.com/art/201007/213585.htm 内存管理,对于Python这样的动态语言,是至关重要的一部分,它在很大程度上甚至决定了Pytho ...

  2. ubuntu更新源,简单两步搞定

    1.启动器中打开Ubuntu软件中心 2.鼠标顶部面板点击编辑选择软件源(163.sohu) 搞定!

  3. QT定制有标题的扁平化下拉框控件

    关键字:QT,QComboBox,QLineEdit,QListView,QPushButton,QMenu,QWidgetAction,setStyleSheet OS:Windows 7 方法一: ...

  4. Android Studio创建项目

    创建项目 首先,先指出Android Studio中的两个概念. Project 和 Module .在Android Studio中, Project 的真实含义是工作空间, Module 为一个具 ...

  5. Oracle设置表只读-alter table xxx read only

    11g以前,当需要设置一个表只读时,我们通过赋予某些用户select权限.但对于表的owner来说,还是可以读写的. 从Oracle 11g开始,我们可以通过一下命令设置表只读或可读可写: alter ...

  6. 传统ASP.NET开发和MVC的设计思想

    传统ASP.NET开发 第一步:客户端请求服务器: 第二步:服务器从数据库取得数据处理后响应给客户端页面. MVC的设计思想 第一步:客户端请求控制器(里面的一个方法): 第二步:控制器从数据库里取得 ...

  7. UITableViewCell 重合问题解决方法

    这两天做ios遇到一个UITableViewCell 数据重合的问题,原因:引起这个问题的主要原因是,重用cell.之前cell上的内容未被清空,而又增加新增内容所致.从网上查了一些解决方法,比如: ...

  8. SQL学习中(一)序列

    序列可以理解数值序列生成器,通俗的说是按照已经设定的规则自动产生数据的方案对象.--SQL SERVER不支持 个人认为序列类似于SQLSERVER中的identity(1,1),可以用于在表中添加数 ...

  9. EXTJS4.2 后台管理菜单栏

    EXTJS 代码: 第一种方法: { title: '汽车信息管理', layout: 'fit', items: [ { xtype: 'treepanel', border: 0, rootVis ...

  10. linux 常用命令 集锦

    第一章  LINUX简介及安装    1一.LINUX介绍    1二.LINUX安装    2三.LINUX目录    2四.总结来说:    3第二章 常用命令及帐户管理    4一.linux命 ...