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

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 }
时间: 2024-08-29 20:40:34

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

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

1.去掉android屏幕中的actionbar: 1 this.requestWindowFeature(Window.FEATURE_NO_TITLE);// 去掉标题栏 2 //这个是全屏幕显示的代码 3 this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN); 3 setContentView(R.layout.logi

Linux以及Android开发中的小技巧和长繁命令记录收集

不断更新收集中.... 2014071743 ssh以nx_guest的身份登录到172.24.221.137,然后在172.24.221.137与172.24.61.252的8080端口建立网络连接,同时创建端口为5678的本地代理服务 ssh -C -f -N -o 'TCPKeepAlive=yes' -L 5678:172.24.61.252:8080 [email protected] 反编译android下的二进制程序 ./prebuilts/gcc/linux-x86/arm/ar

提高eclipse使用效率(二) 提高Android开发效率的小技巧

2013-09-04 22:49:33cnblogs.com-sw926-点击数:214 XML文件的代码提示 adt中也有xml文件的代码提示,为了让提示来的更加猛烈,我们还要设置一下 打开eclipse - Window - Preferences,在右边的目录树中切换到XML - XML Files - Editor - Content Assist,是不是很熟悉,没错,就是Content Assist 接下来就简单了,延迟设为50ms,提示字母把能填的都填上去,设置完之后可以试一下.输入

如何在u不能图上搭配android开发环境——ubuntu小技巧4

如何在linux下用eclipse配置android开发环境 好长时间没有搭配android开发环境了,前几天在win下配了一个用了一下,开始经常使用linux系统的我无法满足于win,今天在ubuntu下试了下,配置了linux下的android环境,在这里分享给想学安卓 的朋友!在另外一篇博客里面介绍了如何搭配win下的android开发环境,有兴趣的朋友可以看一看! 搭配android环境有两种方法:第一种使用集成开发包,第二种自己下载配置插件. 至于是否方便,当然第一种比较容易,省时,合

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

244.http请求的url含有中字符时.须要Uri编码.Uri.encoder() 245.使用androidstudio时,不知道什么原因svn不见了 Android Studio missing Subversion plugin Please make sure that the "SubversionIntegration" plugin is enabled in Preferences > Plugins 246.Error:Execution failed for

android开发中遇到的问题汇总【二】

36.代码规范 http://liuzhichao.com/p/1781.html#more-1781 // Disallow Parent Intercept, just in case ViewParent parent = getParent(); if (parent != null) { parent.requestDisallowInterceptTouchEvent(true); } 38.在纯属布局中,将除最底部以外的的view都设置weight为1就可以了. 39.editvi

Android 开发工具及测试工具 汇总

注明:  转自 外部网站 http://www.tuicool.com/articles/EFBjequ 主要介绍和Android开发工具和测试工具相关的开源项目.  Json2Java 根据JSon数据自动生成对应的Java实体类,还支持Parcel.Gson Annotations对应代码自动生成.期待后续的提取父类以及多url构建整个工程的功能 项目地址: https://github.com/jonfhancock/JsonToJava 在线演示: http://jsontojava.a

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

本文为致力于Android应用的开发人员精选了几个不错的实用教程,无论是初学者还是专业开发人员都应该能够从中获益.这些教程中有不少是关于绘图和地址服务运用的,另外一些则是SDK相关的.希望对大家有所帮助. 1. OpenGL ES 2.0 这里展示了如何创建一个简单的Android应用程序,通过OPGL ES 2.0 API来实现一些基本的图形操作. 2. Android 开发指导 这篇文章介绍了怎样使用Eclipse来创建Android的应用程序.这篇教程非常长,但同时也非常详细. 3. An

android开发中遇到的问题汇总【八】

一. 工具使用 245.使用androidstudio时,不知道什么原因svn不见了 Android Studio missing Subversion plugin Please make sure that the "SubversionIntegration" plugin is enabled in Preferences > Plugins 248.androidstudio 如何自动import用到的类或接口? For Windows/Linux, you can g