Android问题集锦Ⅰ:http://www.cnblogs.com/AndroidJotting/p/4608025.html

EditText输入内容改变事件监听

_edit.addTextChangedListener
(new TextWatcher(){
@Override
public void afterTextChanged
(Editable s) {
// TODO Auto-generated method stub } @Override
public void beforeTextChanged
(CharSequence s, int start, int count,
int after) {
// TODO Auto-generated method stub } @Override
public void onTextChanged
(CharSequence s, int start, int before,
int count) {
// TODO Auto-generated method stub
//关键是这里,监听输入的字符串,如果大于零,则可点击,enable.
if(s.length()>){
_ok.setClickable(true);
_ok.setEnabled(true);
}else{
_ok.setClickable(false);
_ok.setEnabled(false);
}
}
});

在代码中设置TextView的颜色

productState.setTextColor(context.getResources().getColor(R.color.product_value_price_color));
sql语句查询某一时间段内的数据:date表示字段
select * from table where date between '2007-10-01' and '2008-10-01'
或者
select * from table where date>'2007-10-01' and date<'2008-10-01'
两个区别不大,between包含了两头的日期,那个不包含

百度搜索框实现

http://www.baidu.com/s?wd=搜索内容&ie=utf-8

点击ProgressDialog外的区域对话框不消失

ProgressDialog mpDialog = new ProgressDialog(OrderTable.this);
mpDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);//设置风格为圆形进度条
mpDialog.setTitle("提示");//设置标题
mpDialog.setIcon(R.drawable.icon);//设置图标
mpDialog.setMessage("这是一个圆形进度条");
mpDialog.setIndeterminate(false);//设置进度条是否为不明确 mpDialog.setCancelable(true);//设置进度条是否可以按退回键取消 mpDialog.setCanceledOnTouchOutside(false);//设置点击进度对话框外的区域对话框不消失 mpDialog.show();

 File的mkdir() 和 mkdirs()

import java.io.*;
public class TestFile { public static void main(String[] args) throws Exception {
File f = new File("e://xxx//yyy");
System.out.println(f.mkdirs());//生成所有目录
//f.mkdir(); 必须xxx目录存在才能生成yyy目录
//f.createNewFile(); File f2 = new File("E://zzz//t.txt"); //不能生成文件,只能用createNewFile();
f2.createNewFile(); //且zzz目录必须存在
}
}

 TextView如何设置字体大小

第一种方式:

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@color/red"
android:textSize="16sp" />

第二种方式:

mTextView.setTextSize();

  需要注意的就是mTextView.setTextSize(14);是以float格式进行设置字体大小的,这一点一定要注意。

TextView如何设置文本内容换行显示
<1>如果直接在XML文件中写入"aaaaa\nbbbb"可以换行。
<2>在Java文件中用textViewObj.setText("aaaa\nbbbb")也可以换行。
<3>将数据封装到模型类后,在Java文件中使用textViewObj.setText(obj.getXXX()).在android的模拟器界面上显示没有换行的"aaaaa\nbbbb",'\n'没有转义成换行。
解决办法:
textView.setText(obj.getXXX().replace("\\n", "\n"));

Android软键盘如何打开与关闭

当我设计应用时,当需要用户输入时,用户操作完成后如何关闭软键盘呢:

InputMethodManager imm = (InputMethodManager) getSystemService(INPUT_METHOD_SERVICE);
imm.toggleSoftInput(, InputMethodManager.HIDE_NOT_ALWAYS);

上面这种方式存在一个小问题,当软件盘已经打开的话,可以正常关闭软键盘,但是当我们没有调出软键盘时,再执行这句话软键盘就会被调出,查了很多资料没有找到比较合适的判断软键盘是否打开的方法,下面提供一个新的方式,对于上面的问题可以很好的解决。

InputMethodManager imm = (InputMethodManager) getSystemService(Activity.INPUT_METHOD_SERVICE);                
imm.hideSoftInputFromWindow(mEditText.getWindowToken(), );

 Android文件保存路径问题

new File(Environment.getExternalStorageDirectory()+"文件名"+".jpg"//文件将被保存到sdCard根目录下
new File(PathUtils.getPath(context) + "文件名" +"jpg");//文件将被保存的应用安装目录下

 android获得手机屏幕高度和宽度

1、WindowManager wm = (WindowManager) getContext().getSystemService(Context.WINDOW_SERVICE);
int width = wm.getDefaultDisplay().getWidth();
int height = wm.getDefaultDisplay().getHeight(); 2、WindowManager wm = this.getWindowManager();
int width = wm.getDefaultDisplay().getWidth();
int height = wm.getDefaultDisplay().getHeight();

 Android获得控件的高度和宽度

TextView mTextView = (TextView) findViewById(R.id.text);
LayoutParams layoutParams = (LayoutParams) mTextView.getLayoutParams();
layoutParams.width = this.getWindowManager().getDefaultDisplay().getWidth();//先获得屏幕的宽度
layoutParams.height = (this.getWindowManager().getDefaultDisplay().getWidth()/4)*3;//先获得屏幕的长度
mTextView.setLayoutParams(layoutParams);
Android获取本视频文件的第一帧画面
String path  = Environment.getExternalStorageDirectory().getPath();
MediaMetadataRetriever media = new MediaMetadataRetriever();
media.setDataSource(path+"/123.rmvb");
Bitmap bitmap = media.getFrameAtTime();
image = (ImageView)this.findViewById(R.id.imageView1);
image.setImageBitmap(bitmap);

Android在onCreate()中获得控件尺寸

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
final ImageView imageView = (ImageView) findViewById(R.id.imageview);
int w = View.MeasureSpec.makeMeasureSpec(0,View.MeasureSpec.UNSPECIFIED);
int h = View.MeasureSpec.makeMeasureSpec(0,View.MeasureSpec.UNSPECIFIED);
imageView.measure(w, h);
int height =imageView.getMeasuredHeight();
int width =imageView.getMeasuredWidth();
textView.append("\n"+height+","+width);
System.out.println("执行完毕.."+System.currentTimeMillis());
}
//------------------------------------------------方法一
int w = View.MeasureSpec.makeMeasureSpec(0,View.MeasureSpec.UNSPECIFIED);
int h = View.MeasureSpec.makeMeasureSpec(0,View.MeasureSpec.UNSPECIFIED);
imageView.measure(w, h);
int height =imageView.getMeasuredHeight();
int width =imageView.getMeasuredWidth();
textView.append("\n"+height+","+width);
//-----------------------------------------------方法二
ViewTreeObserver vto = imageView.getViewTreeObserver();
vto.addOnPreDrawListener(new ViewTreeObserver.OnPreDrawListener() {
public boolean onPreDraw() {
int height = imageView.getMeasuredHeight();
int width = imageView.getMeasuredWidth();
textView.append("\n"+height+","+width);
return true;
}
});
//-----------------------------------------------方法三
ViewTreeObserver vto2 = imageView.getViewTreeObserver();
vto2.addOnGlobalLayoutListener(new OnGlobalLayoutListener() {
@Override
public void onGlobalLayout() {
imageView.getViewTreeObserver().removeGlobalOnLayoutListener(this);
textView.append("\n\n"+imageView.getHeight()+","+imageView.getWidth());
}
});

如何设置ListView中每隔Item之间的间隔 

  开发中我们经常遇到使用ListView的情况,有时为了更好的视觉效果,我需要设置一下每个Item的之间的间隔,这个如何设计呢?

android:divider="#cccccc"//分割线颜色
android:dividerHeight="1dp"//分割线高度

Android之常见问题集锦Ⅱ的更多相关文章

  1. Android之常见问题集锦Ⅰ

     Android中如何在ViewPager中使动态创建的ImageView铺满屏幕 最近在做东西的时候,有一个要求,就是把用于在ViewPager里面轮播的图片铺满屏幕,但是中间遇到的问题是,Imag ...

  2. Android Studio常见问题集锦

    Android studio无法在可视化页面预览XML布局文件 修改res/values/styles.xml文件中name=“AppTheme”的style,在Theme.AppCompat.Lig ...

  3. 【Android面试】Android面试题集锦 (陆续更新)(最新2012-6-18) eoe上看到的

    ===============eoeAndroid社区推荐:======================= 1.Android开发新浪面试题[开发者必看哦]下载地址 http://www.eoeand ...

  4. Android WebView常见问题及解决方案汇总

    Android WebView常见问题解决方案汇总: 就目前而言,如何应对版本的频繁更新呢,又如何灵活多变地展示我们的界面呢,这又涉及到了web app与native app之间孰优孰劣的争论. 于是 ...

  5. Android之Android WebView常见问题及解决方案汇总

    如有转载,请声明出处: 时之沙: http://blog.csdn.net/t12x3456 Android WebView常见问题解决方案汇总: 就目前而言,如何应对版本的频繁更新呢,又如何灵活多变 ...

  6. VueJS 开发常见问题集锦

    由于公司的前端开始转向 VueJS,最近开始使用这个框架进行开发,遇到一些问题记录下来,以备后用. 主要写一些 官方手册 上没有写,但是实际开发中会遇到的问题,需要一定知识基础. 涉及技术栈 CLI: ...

  7. Android Studio使用心得 - 常见问题集锦

    FBI Warning:欢迎转载,但请标明出处:http://blog.csdn.net/codezjx/article/details/38669939,未经本人允许请勿用于商业用途,感谢支持! 整 ...

  8. android adb常见问题的解决方法!

    ** adb的常见问题     adb:android debug bridge,用于连接模拟器/手机与PC端软件(比如:eclipse或者xx手机助手)     adb devices -> ...

  9. Jmeter性能常见问题集锦

    1. java.net.BindException: Address already in use: connect 开始以为是单机运行脚本运行不过来,所以另加了一台负载机同时运行脚本 分布式环境部署 ...

随机推荐

  1. 【趣事】用 JavaScript 对抗 DDOS 攻击

    继续趣事分享. 上回聊到了大学里用一根网线发起攻击,今天接着往后讲. 不过这次讲的正好相反 -- 不是攻击,而是防御.一个奇葩防火墙的开发经历. 第二学期大家都带了电脑,于是可以用更高端的方法断网了. ...

  2. C语言 · 奇偶判断

    问题描述 能被2整除的数称为偶数,不能被2整除的数称为奇数.给一个整数x,判断x是奇数还是偶数. 输入格式 输入包括一个整数x,0<=x<=100000000. 输出格式 如果x是奇数,则 ...

  3. TSQL Identity 用法全解

    Identity是标识值,在SQL Server中,有ID列,ID属性,ID值,ID列的值等术语. Identity属性是指在创建Table时,为列指定的Identity属性,其语法是:column_ ...

  4. 有朋友问了数据库ID不连续,怎么获取上一篇和下一篇的文章?(不是所有情况都适用)

    呃 (⊙o⊙)…,逆天好久没写SQL了,EF用的时间长了,SQL都不怎么熟悉了......[SQL水平比较菜,大牛勿喷] 方法很多种,说个最常见的处理 因为id是自增长的,所以一般情况下下一篇文章的I ...

  5. Java中Comparable与Comparator的区别

    相同 Comparable和Comparator都是用来实现对象的比较.排序 要想对象比较.排序,都需要实现Comparable或Comparator接口 Comparable和Comparator都 ...

  6. Python碎碎念

    1. 如何添加路径 主要有以下两种方式: 1> 临时的 import sys sys.path.append('C:\Users\Victor\Desktop') 2> 永久的 在Linu ...

  7. CRL快速开发框架系列教程十(导出对象结构)

    本系列目录 CRL快速开发框架系列教程一(Code First数据表不需再关心) CRL快速开发框架系列教程二(基于Lambda表达式查询) CRL快速开发框架系列教程三(更新数据) CRL快速开发框 ...

  8. JavaScript基础知识总结(三)

    JavaScript语法 七.循环语句 1.while 语法: while (exp) { //statements; } 说明:while (变量<=结束值) { 需执行的代码 } 例子: / ...

  9. Ubuntu搭建lnmp环境

    1.安装nginx 安装 sudo apt-get install nginx 服务启动.停止.重启 /etc/init.d/nginx start /usr/sbin/nginx -c /etc/n ...

  10. 【centos7常用技巧】RPM打包

    一.RPM打包的目的 1.当目标机中不存在编译环境时,可以先在本地环境中编译打包,然后直接在目标机中用rpm -ivh *.rpm安装即可. 2.当需要在目标机中安装多个软件或者增加多个文件时,可以将 ...