`

android基础

阅读更多

Activity的两种启动模式:FLAG_ACTIVITY_CLEAR_TOP和FLAG_ACTIVITY_REORDER_TO_FRONT

 

Activity的两种启动模式:FLAG_ACTIVITY_CLEAR_TOP和FLAG_ACTIVITY_REORDER_TO_FRONT

1. 如果已经启动了四个Activity:A,B,C和D。在D Activity里,我们要跳到B Activity,同时希望C finish掉,可以在startActivity(intent)里的intent里添加flags标记,如下所示:

 

 

Intent intent = new Intent(this, B.class); 

intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);

startActivity(intent);

 

这样启动B Activity,就会把D,C都finished掉,如果你的B Activity的启动模式是默认的(multiple) ,则B Activity会finished掉,再启动一个新的Activity B。

  如果不想重新再创建一个新的B Activity,则在上面的代码里再加上:

 

 

intent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);  

 

这样B Activity就会再创建一个新的了,而是会重用之前的B Activity,同时调用B Activity的onNewIntent()方法。

 

2. 如果已经启动了四个Activity:A,B,C和D,在D Activity里,想再启动一个Actvity B,但不变成A,B,C,D,B,而是希望是A,C,D,B,则可以像下面写代码:

 

 

 

Intent intent = new Intent(this, MainActivity.class);

intent.addFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT); 

startActivity(intent);

 

android背景选择器selector用法

 

一.创建xml文件,位置:drawable/xxx.xml,同目录下记得要放相关图片

<?xml version="1.0" encoding="utf-8" ?>   

<selector xmlns:android="http://schemas.android.com/apk/res/android"> 

<!-- 默认时的背景图片-->  

  <item android:drawable="@drawable/pic1" />    

<!-- 没有焦点时的背景图片 -->  

  <item android:state_window_focused="false"   

        android:drawable="@drawable/pic1" />   

<!-- 非触摸模式下获得焦点并单击时的背景图片 -->  

  <item android:state_focused="true" android:state_pressed="true"   android:drawable= "@drawable/pic2" /> 

<!-- 触摸模式下单击时的背景图片-->  

<item android:state_focused="false" android:state_pressed="true"   android:drawable="@drawable/pic3" />  

<!--选中时的图片背景-->  

  <item android:state_selected="true"   android:drawable="@drawable/pic4" />   

<!--获得焦点时的图片背景-->  

  <item android:state_focused="true"   android:drawable="@drawable/pic5" />   

</selector>

二.使用xml文件:

1.方法一:在listview中配置android:listSelector="@drawable/xxx

或者在listview的item中添加属性android:background="@drawable/xxx"

2.方法二:Drawable drawable = getResources().getDrawable(R.drawable.xxx);  

       ListView.setSelector(drawable);但是这样会出现列表有时候为黑的情况,需要加上:android:cacheColorHint="@android:color/transparent"使其透明。

 

相关属性:

android:state_selected是选中

android:state_focused是获得焦点

android:state_pressed是点击

android:state_enabled是设置是否响应事件,指所有事件

根据这些状态同样可以设置button的selector效果。也可以设置selector改变button中的文字状态。

 

以下是配置button中的文字效果:

drawable/button_font.xml

<?xml version="1.0" encoding="utf-8"?>

<selector xmlns:android="http://schemas.android.com/apk/res/android">

    <item android:state_selected="true" android:color="#FFF" />

    <item android:state_focused="true" android:color="#FFF" />

    <item android:state_pressed="true" android:color="#FFF" />

    <item android:color="#000" />

</selector>

Button还可以实现更复杂的效果,例如渐变

drawable/button_color.xml

<?xml version="1.0" encoding="utf-8"?>

<selector xmlns:android="http://schemas.android.com/apk/res/android">        / 

<item android:state_pressed="true">//定义当button 处于pressed 状态时的形态。 

                <shape>

                <gradient  android:startColor="#8600ff" /> 

                      <stroke   android:width="2dp" android:color="#000000" /> 

                       <corners android:radius="5dp" />  

                       <padding android:left="10dp" android:top="10dp" 

                                android:bottom="10dp" android:right="10dp"/>  

                 </shape> 

</item> 

<item android:state_focused="true">//定义当button获得 focus时的形态 

                 <shape> 

                       <gradient android:startColor="#eac100"/> 

                        <stroke android:width="2dp" android:color="#333333"  color="#ffffff"/> 

                         <corners android:radius="8dp" />   

                         <padding android:left="10dp" android:top="10dp" 

                                  android:bottom="10dp" android:right="10dp"/>                   

                </shape> 

 </item>

</selector> 

最后,需要在包含 button的xml文件里添加两项。例如main.xml 文件,需要在<Button />里加两项android:focusable="true" android:background="@drawable/button_color"

 

 

 

//隐藏标题

  requestWindowFeature(Window.FEATURE_NO_TITLE);

  //隐藏信号条

 getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN);

//屏幕标题栏中使用不确进度条

 

requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS);

必须写到setContentView()前面

分享到:
评论

相关推荐

    Android基础教程PPT

    这篇“Android基础教程PPT”旨在引导初学者了解如何使用Eclipse环境进行Android应用开发。首先,我们从创建或导入Android工程开始。 要开启一个新的Android工程,你需要在Eclipse中选择[File]-&gt;[New]-&gt;[Project],...

    Android 基础教程 第三版 PDF 含源码

    《Android基础教程 第三版》是一本针对初学者和进阶开发者的重要参考资料,全面覆盖了Android应用开发的基础知识。此版本的PDF版本以其高质量的文本和包含源码的特点,为学习者提供了便捷的学习途径。书中的内容围绕...

    Android基础教程(第3版·修订版)

    ### Android基础教程(第3版·修订版)关键知识点概览 #### 一、书籍概述与定位 《Android基础教程(第3版·修订版)》是一部专为Android开发新手及中级开发者准备的基础教程。本书延续了Pragmatic系列图书的一贯风格...

    android 基础教程(第三版)配套源码

    《Android基础教程(第三版)》是一本深受开发者欢迎的指南,它涵盖了Android开发的核心概念和技术,旨在帮助初学者和有经验的开发者更好地理解和实践Android应用开发。这本书的配套源码提供了丰富的实例,使得读者...

    Android基础-02

    在Android基础的学习中,"Android基础-02"这一主题主要涵盖了Android开发的基本概念和核心组件,这些都是构建Android应用程序的基础。下面将详细讲解这些知识点。 首先,Android是一种基于Linux内核的操作系统,...

    Android基础教程4

    **Android基础教程4** 在Android开发的学习过程中,基础教程4主要涵盖了Android开发的多个关键方面,包括用户界面设计、文件存取、数据库编程、应用程序管理、权限控制以及资源管理等核心概念。以下是对这些主题的...

    2015最新Android基础入门教程.pdf

    2015年发布的这份Android基础入门教程详细介绍了Android系统架构、开发环境的搭建、用户界面设计以及各种基础知识点,为初学者提供了系统的学习路径。 首先,教程介绍了Android系统的基本概念,包括系统架构和应用...

    2015最新Android基础入门教程PDF版打包合集

    这个"2015最新Android基础入门教程PDF版打包合集"是为初学者准备的宝贵资源,旨在帮助他们快速掌握Android应用开发的基本概念和技术。以下是这个教程合集中可能包含的一些关键知识点: 1. **Android简介**:首先,...

    Android基础教程 第4版

    《Android基础教程 第4版》是一本针对初学者和进阶者全面介绍Android开发的书籍。本书涵盖了Android开发的基础知识,旨在帮助读者掌握构建Android应用的核心技能。在深入学习之前,我们先了解一下Android系统的基本...

    Android基础与应用开发教程

    Android基础与应用开发教程 Android基础与应用开发教程

    2015最新Android基础入门教程PDF版打包合集.rar

    本资源为2015年发布的Android基础入门教程的PDF合集,对于初学者来说,是一份非常有价值的参考资料。在Android开发领域,基础知识是构建所有复杂应用的基础,这份教程将帮助你逐步掌握这一领域的核心概念。 一、...

    Android基础开发与实践

    Android基础开发与实践

    Android基础笔记

    Android 基础笔记 Android 基础笔记是 Android 开发的入门知识点总结,涵盖了 Android 开发的基础知识点,从 Android 发展史到自定义 ContentProvider 的实现。 一、Android 发展史 Android 的发展史可以追溯到 ...

    Android基础教程(第四版)随书源码

    《Android基础教程(第四版)随书源码》是一份宝贵的学习资源,为读者提供了深入理解Android开发的基础。这份源码涵盖了Android应用开发的核心概念和技术,包括用户界面设计、数据存储、网络通信、多媒体处理等多个...

    Android基础入门教程

    Android基础入门教程,网上教程,打包成chm,看得时候方便一些 教程于2015年7月开始撰写,耗时半年,总共148节,涵盖了Android基础入门的大部分知识。

    android基础文档

    《Android学习指南》是针对初学者的一份详尽教程,旨在提供全面的Android基础知识,帮助读者从零开始掌握Android应用开发。这份PDF文档涵盖了Android开发的各个方面,包括环境搭建、编程语言基础、UI设计、数据存储...

    Android零基础教程视频链接

    android基础教程,里边包括新版Android开发教程&笔记1--基础入门,Android开发教程&笔记2--基础入门二,Android开发教程&笔记3--环境搭建与解析,Android开发教程&笔记4--Dalvik ADB Android开发教程+笔记5--模拟器...

    android基础.ppt

    android基础.ppt activety service broadcast contentprovider

    Android基础教程+源码

    **Android基础教程** Android是一种基于Linux内核的开源操作系统,主要应用于移动设备,如智能手机和平板电脑。这个基础教程旨在帮助初学者理解Android开发的基本概念和技术。教程可能涵盖了以下几个核心主题: 1....

Global site tag (gtag.js) - Google Analytics