`

android 编程技巧汇总

 
阅读更多

android的EditText,转到某个Activity时,总是因为它而弹出该输入法,那么一般是我们点击了它的输入框后才弹出,所以可以在oncCreate中添加如下代码:

this.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);
 

 

  如何使得android listview在刷新之后仍然定位到原来的地方,那就需要知道两个量,一个是你定位到的item的Index,和adapter上的编号一致,一个是从listview到该item的距离,以下是方法:

 

// save index and top position
int index = mList.getFirstVisiblePosition();
View v = mList.getChildAt(0);
int top = (v == null) ? 0 : v.getTop();

// ...

// restore
mList.setSelectionFromTop(index, top);

 其中index即为listview中顶层一个可视的item。而v就是该可视item。因为getChildAt返回的是当前可视的item,参数的意思是可视item重新排列后的index,所以是0.

 

使得Toast 显示在某个View之上:

步骤:获取该view在全屏幕上的绝对location。然后获取状态栏的高度,将location减去该高度后便可以设置Toast在该view上。

 

int[] location = new int[2];
fooView.getLocationOnScreen(location);
Rect rect=new Rect();
fooActivity.getWindow().getDecorView().getWindowVisibleDisplayFrame(rect);
Toast toast=Toast.makeText(...);
toast.setGravity(Gravity.TOP|Gravity.LEFT,location[0],location[1]-rect.top);
toast.show();

 从以上可以得知toast的setGravity设置的x,y是从标题栏开始的坐标(若有的话),而getLocationOnScreen获取的是该view在整个屏幕的坐标。而且,默认下,Toast的重心是Gravity.CENTER_HORIZONTAL|Gravity.BOTTOM

 

TextView 使用html的标签:

 

Spanned sp=android.text.html.fromHtml("<b>jason</b>");
yourTextView.setText(sp);

TextView中的字体加粗(中文字体)

 TextView tv = (TextView)findViewById(R.id.TextView01);
                                      TextPaint tp = tv.getPaint();
                                      tp.setFakeBoldText(true);

 

Spannable string 常用方法:来自http://mycoding.iteye.com/blog/1297490

 

 

TextView txtInfo =(TextView)findViewById(R.id.tv);
        //SpannableString文本类,包含不可变的文本但可以用已有对象替换和分离。
        //可变文本类参考SpannableStringBuilder
        SpannableString ss = new SpannableString("红色打电话斜体删除线绿色下划线图片:.");  
        //用颜色标记文本
        ss.setSpan(new ForegroundColorSpan(Color.RED), 0, 2,  
                //setSpan时需要指定的 flag,Spanned.SPAN_EXCLUSIVE_EXCLUSIVE(前后都不包括).
                Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
        //用超链接标记文本
        ss.setSpan(new URLSpan("tel:4155551212"), 2, 5,  
                Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
        //用样式标记文本(斜体)
        ss.setSpan(new StyleSpan(Typeface.BOLD_ITALIC), 5, 7,  
                Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
        //用删除线标记文本
        ss.setSpan(new StrikethroughSpan(), 7, 10,  
                Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
        //用下划线标记文本
        ss.setSpan(new UnderlineSpan(), 10, 16,  
                Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
        //用颜色标记
        ss.setSpan(new ForegroundColorSpan(Color.GREEN), 10, 13,  
                Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
        //获取Drawable资源
        Drawable d = getResources().getDrawable(R.drawable.icon);  
        d.setBounds(0, 0, d.getIntrinsicWidth(), d.getIntrinsicHeight());
        //创建ImageSpan
        ImageSpan span = new ImageSpan(d, ImageSpan.ALIGN_BASELINE);
        //用ImageSpan替换文本
        ss.setSpan(span, 18, 19, Spannable.SPAN_INCLUSIVE_EXCLUSIVE);  
        txtInfo.setText(ss);
        txtInfo.setMovementMethod(LinkMovementMethod.getInstance());     
 

 

 

反向格式化字符串化的日期:

 

String myTime="2012/03/14 02:30 pm";
Date date=new SimpleDateFormate("yyyy/MM/dd hh:mm a",Locale.ENGLISH).parse(myTime);

 其中加入语言名称是为了确定a处代表的是pm/am还是别国的语言(如中文的下午/上午),若你的系统是英文,此处可以不表示,若是中文,则会报错,因为这涉及到编码的问题。

 

分享到:
评论

相关推荐

    Android开发技巧总汇

    "Android开发技巧总汇"是一份集大成的资源,旨在帮助开发者提升应用层的设计思想,并通过实际的代码示例深入理解Android UI设计的各种策略。这份资料涵盖了多个方面,下面将详细阐述其中的关键知识点。 1. **...

    Android开发技巧总汇(3)

    ### Android开发技巧总汇(3) #### 1. ListView背景 **1.1 ListView被选中item的背景颜色** 在Android开发中,ListView是非常常见的一种控件,它用于展示一系列可滚动的数据项。为了增强用户体验,开发者往往需要...

    Android_技巧汇总(1)

    以下是一些关键的Android编程技巧的汇总: 1. **入门实例剖析** 入门实例通常是学习任何新平台的第一步。对于Android,这可能包括创建一个简单的“Hello, World!”应用。通过这个基础,你可以理解Android项目结构...

    Android学习资料大汇总编程小技巧共11页.pdf.z

    1. **Android基础知识**:在学习Android编程时,首先要了解Android系统的基本架构,包括Linux内核、Dalvik或ART虚拟机、应用程序框架以及各种UI组件。 2. **环境搭建**:开始编程前,需要安装Android Studio,这是...

    Android开发技巧总汇(4)

    ### Android开发技巧总汇(4) #### 1. 通过添加按钮来触发Menu按键 在Android应用中,可以通过编程方式来触发Menu按键的功能。如果希望用户在特定情况下手动调用菜单,可以添加一个按钮,并在按钮的点击事件中触发`...

    Android开发技巧5篇

    在Android开发领域,掌握一系列实用的技巧是提升开发效率和代码质量的关键。"Android开发技巧5篇"这个...通过阅读"Android开发技巧总汇"系列文档,开发者可以从不同角度深入学习这些知识点,进一步提升自己的技能水平。

    编程资料-汇总_编程资料汇总_

    编程资料的汇总是一个重要的资源集合,它通常包含了各种编程语言、框架、工具和技术的教程、指南、手册和示例代码,旨在帮助初学者和经验丰富的程序员提升技能、解决问题和了解最新趋势。在这个压缩包中,我们看到有...

    .Android开源项目分类汇总

    通过下载和研究这些开源项目,开发者可以深入理解Android系统的内部工作原理,学习到实际项目中的最佳实践,提高自己的编程技巧和解决问题的能力。同时,参与开源社区的讨论和贡献,也是提升个人影响力和建立专业...

    Android 开发那点技巧

    以上只是部分Android开发中常见的技巧,通过阅读提供的文档如"Android_技巧汇总(1).doc"、"Android开发技巧总汇(5).doc"等,你还可以了解到更多具体实现细节和案例。不断学习和实践这些技巧,将使你成为一个更出色的...

    Android多媒体开发高级编程 (Shawn Van Every) pdf扫描版

    《Android多媒体开发高级编程》由Shawn Van Every撰写,是一本深入探讨Android平台上多媒体开发的专著。这本书针对想要在Android应用中实现高效、流畅多媒体功能的开发者,提供了丰富的实践经验和详细的技术指导。 ...

    android开发资源汇总

    ### Android开发资源汇总知识点 #### 一、Android平台概述与发展历程 - **平台起源与发展**:Android是由Andy Rubin等人在2003年创立的,最初是一家专注于移动设备的公司。2005年,Google收购了Android Inc.,并在...

    android小知识、技巧、源码汇总

    下面我们将就“android小知识、技巧、源码汇总”这个主题进行详细的探讨。 一、Android基础知识 Android是一个开源的操作系统,主要用于移动设备,如智能手机和平板电脑。它的核心组件包括应用程序框架、Linux内核...

    androidUI开发汇总精华

    三本关于androidUI设计的PDF电子书 android UI.pdf 主讲androidUI元素...android界面编程技巧.pdf 主讲UI设置常用技巧和方法 android界面效果全汇总.pdf 内容为一些UI效果实例 三本资料由浅入深,android开发者必看。

    安卓Android开发电子书大全 2018 (1/4)

    android 2高级编程(第2版).zip Android_控件.doc android中文教程.rar Android基础教程.rar android学习进阶路.doc android平台初级错误整理.doc Android应用开发揭秘源码.zip Android应用开发详解.rar ...

    android 例子汇总源码

    "Android例子汇总源码"这个压缩包文件显然集合了多个Android应用实例的源代码,旨在帮助开发者深入理解和掌握Android编程的各种技巧和最佳实践。以下是根据标题和描述以及标签可能包含的一些关键知识点的详细解释: ...

    android面试题汇总

    最后,面试者还需要对Android Studio的使用和调试技巧有所了解,包括Gradle构建系统,单元测试和集成测试的编写,以及如何利用Logcat进行问题排查。 总的来说,这份【Android面试题汇总】涵盖了Android开发的各个...

    Android编程实现动画自动播放功能

    《Android开发动画技巧汇总》、《Android开发入门与进阶教程》、《Android视图View技巧总结》、《Android编程之activity操作技巧总结》、《Android文件操作技巧汇总》、《Android资源操作技巧汇总》及《Android控件...

    Android编程实现activity dialog透明背景的方法

    Android 编程实现 Activity Dialog 透明背景的方法 Android 编程实现 Activity ...* 《Android 资源操作技巧汇总》 * 《Android 数据库操作技巧总结》 * 《Android 视图 View 技巧总结》 * 《Android 控件用法总结》

Global site tag (gtag.js) - Google Analytics