`
wayfarer
  • 浏览: 297768 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Android中应该注意的细节

阅读更多

(1) res中的xml文件命名必须全部为小写字母,如果有大写字母存在,则无法编译通过。原因不知。


(2) 关于onCreate()方法中的语句次序

protected void onCreate(Bundle savedInstanceState) {
	super.onCreate(savedInstanceState); // 次序为1,原因很简单,因为是super语句
	setContentView(R.layout.checkbox); // 次序为2,和j2me不同,这条语句必须放在其他widget之前,放在其前面的widget不会被加载到这个Activity中
	tv = (TextView) findViewById(R.id.textView);
	apple = (CheckBox) findViewById(R.id.apple);
	......
}

requestWindowFeature(Window.FEATURE_NO_TITLE); 使得Activity没有titleBar,进而使显示区域变大。如果需要这条语句,其应当置于setContentView()方法之前。


(3) XML Attributes

    1)Spinner/GridView/ListView


    2) @+id
@+id是个人添加新控件的id,“+”表示新建属性;@id是android内置的;@android:id/empty表示Android中的自由属性。


      3) layout_width和layout_height是必备属性:java.lang.RuntimeException: You must supply a layout_width attribut.

    4) java.lang.IllegalStateException:ScrollView can host only one direct child.


(4)控制键盘的显示和隐藏

dispatchKeyEvent(new KeyEvent(KeyEvent.ACTION_DOWN,KeyEvent.KEYCODE_BACK));
dispatchKeyEvent(new KeyEvent(KeyEvent.ACTION_UP, KeyEvent.KEYCODE_BACK));


(5)你后台的Activity被系统回收怎么办:onSaveInstanceState
当你的程序中某一个Activity A在运行时,主动或被动地运行另一个新的Activity B,这个时候A会执行onSaveInstanceState()
B完成以后又会来找A,这个时候就有两种情况:一是A被回收,二是A没有被回收,被回收的A就要重新调用onCreate()方法,不同于直接启动的是这回onCreate()里是带上了参数savedInstanceState;而没被收回的就直接执行onResume(),跳过onCreate()了。
savedInstanceState是一个Bundle对象,你基本上可以把他理解为系统帮你维护的一个Map对象。在onCreate()里你可能会用到它,如果正常启动onCreate就不会有它,所以用的时候要判断一下是否为空。
就像官方的Notepad教程里的情况,你正在编辑某一个note,突然被中断,那么就把这个note的id记住,再起来的时候就可以根据这个id去把那个note取出来,程序就完整一些。这也是看你的应用需不需要保存什么,比如你的界面就是读取一个列表,那就不需要特殊记住什么,哦,没准你需要记住滚动条的位置...


(6)AlertDialog

AlertDialog类是Dialog类的子类。它默认提供了3个按钮和一个文本消息。这些按钮可以按需要来使他们显示或隐藏。
AlertDialog类中有一个内部类,名为 ‘Builder’,Builder类提供了为对话框添加多选或单选列表,以及为这些列表添加事件处理的功能。另外,这个Builder类将 AlertDialog对话框上的3个按钮按照他们的位置分别称呼为:PositiveButton, NeutralButton, NegativeButton

  • 大小: 24.2 KB
  • 大小: 30.8 KB
  • 大小: 166.6 KB
分享到:
评论

相关推荐

    android设计中的注意点

    在Android程序设计中,UI设计是至关重要的,因为它直接影响到用户的体验和产品的吸引力。以下是一些Android UI设计的关键点: 首先,UI设计应避免直接移植其他平台的设计。每个平台都有其独特的设计风格和用户习惯...

    android 设置textview中划线效果

    ### Android设置TextView中划线效果 在Android应用开发过程中,我们...然而,在实际开发过程中还需要注意一些细节问题,如兼容性、性能以及可读性等方面。希望本文能够帮助到正在学习或者从事Android开发的朋友们。

    Android通知栏微技巧一些需要注意的小细节

    本文将探讨一些Android通知栏的微技巧和需要注意的细节。 首先,为了确保在不同Android版本上的兼容性,开发者通常会使用`NotificationCompat`类,它是Android Support Library中的一个组件,位于appcompat-v7库中...

    android和ios在交互细节上的差异

    - **特点:** Android 应用程序的导航更加灵活多样,既可以通过实体返回键也可以通过操作栏中的“向上”按钮实现。 - **细节说明:** - Android 2.3及更早版本依赖硬件返回键进行导航。 - Android 3.0 引入了操作...

    Android 使用模板生成Word文档的demo,最新版在Android studio中运行

    在Android平台上,开发人员经常需要处理与文档生成和编辑相关的任务,...然而,需要注意的是,由于Android的资源限制和文件操作的复杂性,实际应用时可能需要进行性能优化和错误处理,以确保应用的稳定性和用户体验。

    使用Android Studio查看Android Lollipop源码

    这对于理解Android系统的工作原理、探索底层实现细节以及提升自身的开发技能都具有重要意义。此外,遇到问题时,可以参考在线社区如Google官方论坛或Stack Overflow上的相关讨论来寻找解决方案。

    Android中实现文字、图片资源国际化案例

    在Android应用开发中,为了使应用能够适应全球不同的语言环境,开发者通常会采用资源国际化...在实际项目中,可能还需要考虑更多细节,如右到左语言的布局支持、字体大小和方向等,但这已经为基本的国际化奠定了基础。

    Android-AndroidApp检查所有已安装应用申请权限的细节

    本文将深入探讨如何检查已安装的Android应用所申请的权限细节,这对于开发者进行安全审计、用户了解应用权限使用情况以及逆向工程分析都具有重要意义。 首先,我们需要理解Android权限模型。Android中的权限分为...

    Android ListView边框圆角美化

    总的来说,Android ListView的边角圆角美化涉及到自定义布局、形状资源、适配器的使用以及一些细节的优化。通过这种方式,我们可以使ListView更加美观,提升应用的整体设计感。同时,也要注意性能问题,避免过度绘制...

    android Gridview分页实现

    注意,这个例子中的数据获取是异步进行的,以防止阻塞UI线程。在实际项目中,你可能还需要考虑错误处理、数据缓存等细节。同时,优化`getView()`方法的性能也很重要,比如使用convertView来复用视图,避免不必要的...

    android-ndk(android-ndk-r26b-windows.zip)

    在实际应用中,开发者需要注意NDK的使用可能会增加应用的复杂性,例如增加了调试难度,且需要关注不同设备间的兼容性问题。因此,明智地选择何时使用NDK,以及如何管理原生代码,是提升开发效率和产品质量的关键。 ...

    Android Studio中使用NDK/JNI

    NDK和JNI的使用涉及到跨语言调用,因此需要注意一些细节,如异常处理、内存管理以及线程同步。此外,由于原生代码不具有Java的垃圾回收机制,所以开发者需要手动管理内存,防止内存泄漏。 总的来说,Android Studio...

    pcl-android-180-build.zip

    需要注意的是,由于PCL是一个庞大的库,可能会消耗大量内存和CPU资源,因此在Android设备上使用时需考虑性能优化,如减少点云数据的大小、选择合适的算法等。 总结来说,"pcl-android-180-build.zip"是一个方便...

    详解Android开发录音和播放音频的步骤(动态获取权限)

    此外,Android 开发录音和播放音频还需要注意一些重要的细节,例如: * 需要在 AndroidManifest.xml 文件中添加相应的权限 * 需要在 Activity 中实例化相应的控件 * 需要使用正确的录音和播放音频的参数 * 需要注意...

    android从指定文件夹中显示图片

    以上就是从指定文件夹中显示图片的主要流程和技术细节。需要注意的是,由于Android系统的碎片化,不同版本可能有不同的处理方式,所以开发时要考虑兼容性问题。同时,随着Android版本的更新,对外部存储的使用策略也...

    android悬浮球实现

    在Android开发中,"android悬浮球实现"是一个常见的需求,主要目的是为了提供用户便捷的快捷操作入口或...通过学习和分析该项目,开发者可以更好地理解和掌握Android悬浮球的实现细节,进而为自己的应用添加这一功能。

    java学习细节 android学习笔记

    根据给定的信息,我们可以从Java和Android学习笔记中提取出一系列重要的知识点,下面将逐一进行详细解释。 ### Java基础知识 #### 1. 命令行基础操作 - **`javacmd`**: 这个命令是Java命令行工具的一部分,用于...

    Android中实现异步加载图片的Demo

    在Android开发中,异步加载图片是一项至关重要的技术,它能显著提升用户体验,尤其是在处理大量图片数据时。这个"Android中实现异步加载图片的Demo"展示了如何在Android应用中高效地加载和显示图片,无论是从本地...

    Android 自带图标库

    ### Android 自带图标库 #### 一、概览 Android 自带图标库是开发者们创建应用时经常利用的资源之一。...同时,在开发过程中也要注意不同 Android 版本间图标资源的变化,以确保应用能够在不同设备上正常运行。

    Android开发之AsyncTask机制及使用细节例子源码

    在Android应用开发中,异步任务(AsyncTask)是一个常用工具,用于在后台线程执行耗时操作,然后在UI线程更新结果,避免阻塞用户界面。AsyncTask的使用和内部机制对于任何Android开发者来说都至关重要。让我们深入...

Global site tag (gtag.js) - Google Analytics