![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
android学习笔记
伊布酱
这个作者很懒,什么都没留下…
展开
-
组件不会随着软键盘上升
activity.getWindow().setSoftInputMode(WindowManager.LayoutParams. SOFT_INPUT_STATE_HIDDEN | WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE | ...原创 2019-09-03 00:28:50 · 228 阅读 · 0 评论 -
笔记 多个Activity的使用:
使用Bundle在Activity之间交换数据:Intent是Activity的信使,Intent本身并不具备存储数据的能力,需要借助Bundle来实现,BundleST类似C++STL库中的map在android中将要保存的数据存放到Bundle当中,通过Intent提供的putExtras()方法保存到Intent当中,然后用startActivity()方法启动另一个Activity...原创 2019-06-30 22:36:55 · 324 阅读 · 0 评论 -
笔记 启动和关闭Activity:
启动Activity启动Activity分为两种情况:a) 在一个android应用中,只有一个Activity的时候,只需要在AndroidManifest.xml文件中对其进行配置,并且将其设置为程序的入口,当运行该项目时,将自动启动该Activityb) 在一个android文件中,存在多个Activity时,需要应用startActivity()方法来启动需要的Activity,s...原创 2019-06-30 22:33:12 · 623 阅读 · 0 评论 -
笔记 配置Activity
使用android studio向导创建Activity后,会自动在AndroidManifest.xml文件中配置该Activity,如果没有在AndroidManifest.xml文件中配置,而又在程序中启动了该Activity,那么将抛出异常具体的配置方法:在application /application标记中添加activity /activity标记实现(每个Activity对应一...原创 2019-06-30 22:29:39 · 350 阅读 · 0 评论 -
笔记 基本程序单元Activity:
在android应用中,提供了4大基本组件,分别是Activity,Service,BroadcastReceiver和ContentProvider,而Activity是android应用中最常见的组件之一,在android中,Activity代表手机或者平板电脑中的一屏,它提供了和用户交互的可视化界面,在一个Activity中,可以添加很多组件在一个android应用中,可以有多个Activ...原创 2019-06-30 22:25:51 · 249 阅读 · 0 评论 -
笔记 选项卡
选项卡用于实现一个多标签页的用户界面,通过它可以将一个复杂的对话框分割成若干个标签页,实现对信息的分类显示和管理Android使用选项卡不能用一个具体的组件在XML文件中添加在XML文件中添加选项卡:a) 在布局文件中添加实现选项卡所需的TabHost,TabWidget和FrameLayout组件b) 编写各标签页中要显示内容所对应的XML布局文件c) 在Activity中,获取并初...原创 2019-06-30 22:22:33 · 102 阅读 · 0 评论 -
笔记 ScrollView(滚动视图)类:
在默认情况下内容超出屏幕范围将不显示,android布局管理器本身没有提供滚动屏幕的功能,所以就有了ScrollView组件支持滚动屏幕ScrollView类是android.widget.FrameLayout(帧布局管理器)的子类,在滚动视图中可以添加任何想要放入其中的组件,但是一个滚动视图只能放置一个组件,如果想放置多个可以在滚动视图中放置一个帧布局管理器,再将要放置的其他多个组件放置到该...原创 2019-06-30 22:19:35 · 277 阅读 · 0 评论 -
笔记 ListView类(列表视图):
间接继承于ViewGroup,属于容器类组件,通常用于提供一系列可选择的列表项供用户选择,从而方便用户列表视图是android最常用的一种视图组件,它以垂直列表的形式列出需要显示的列表项,例如微信通讯录界面的联系人列表ListView常用的XML属性:android:divider 用于为列表视图设置分隔条,既可以用颜色分隔,也可以用Drawable资源分隔android:divider...原创 2019-06-24 06:53:21 · 491 阅读 · 0 评论 -
笔记 Spinner类(下拉列表框):
间接继承于ViewGroup,属于容器类组件,通常用于提供一系列可选择的列表项供用户选择,从而方便用户Spinner类支持的XML属性:android:entries 指定列表项 android:prompt 用于指定下拉列表的标题Android5.0应用默认主题Theme.Holo时,设置android:prompt属性看不到具体的效果,如果采用Theme.Black,就可以在弹...原创 2019-06-24 06:51:13 · 406 阅读 · 0 评论 -
笔记 调用另一个Activity并返回结果
不再使用startActivity()方法,而是使用startActivityForResult()方法public void startActivityForResult(Intent intent,int requestCode); (requestCode是请求码)接收一个Activity的返回值: @Overrie protected void onActivityResult(...原创 2019-06-30 22:40:27 · 393 阅读 · 0 评论 -
笔记 为GridView关联适配器:
GridView对象名 = (GridView)finViewById(R.id.GridView组件名); BaseAdapter对象名 = new BaseAdapter() { @Override public View getView(int position,View convertView,ViewGroup parent) { //进行显示操作} @Over...原创 2019-06-30 22:51:15 · 144 阅读 · 0 评论 -
笔记 Fragment:
它与Activity十分相似,用来在一个Activity中描述一些行为或一部分用户界面,使用多个Fragment可以在一个单独的Activity中建立多个UI面板,也可以在多个Activity中重用Fragment一个Fragment必须被嵌入到一个Activity当中,它的生命周期直接受其所属的宿主Activity的生命周期的影响当Activity被暂停时,其中的所有Fragment也被暂停...原创 2019-06-30 22:52:20 · 95 阅读 · 0 评论 -
关闭键盘
InputMethodManager imm = (InputMethodManager) context. getSystemService(Context.INPUT_METHOD_SERVICE);if(imm != null){ ... //出于安全应该判断是否为空指针 imm.showSoftInput(getwindow().getCurrentFocus...原创 2019-09-03 00:28:01 · 125 阅读 · 0 评论 -
显示软键盘
InputMethodManager imm = (InputMethodManager) context. getSystemService(Context.INPUT_METHOD_SERVICE);if(imm != null){ ... //出于安全应该判断是否为空指针 imm.showSoftInput(view, 0);//view就是可以获取焦点并且已经...原创 2019-09-03 00:26:23 · 113 阅读 · 0 评论 -
得到屏幕宽高
Display display= getWindow().getWindowManager().getDefaultDisplay();DisplayMetrics dm=new DisplayMetrics();display.getMetrics(dm);int mWidth=dm.widthPixels;int mHeight=dm.heightPixels;原创 2019-09-03 00:18:56 · 120 阅读 · 0 评论 -
防止Edittext在onTextChanged中调用setText陷入死循环
edittext.removeTextChangedListener(textWatcher);//关闭当前设置的textWatcheredittext.setText();edittext.addTextChangedListener(textWatcher);//再次载入该textWatcher什么是textWatcher :在使用addTextChangedListener函数的...原创 2019-09-02 20:47:39 · 2594 阅读 · 2 评论 -
笔记 Intent对象的属性:
一个Intent对象实质上是一组被捆绑的信息,它可以是对Intent有兴趣的组件的信息,也可以是Android系统感兴趣的信息Intent对象的属性及其作用:Component name 指定为处理Intent对象的组件名称 Action Intent要完成的一个动作Category 用来对执行动作的类别进行描述 Data 向Action提供要操作的数据 ...原创 2019-07-22 14:36:19 · 775 阅读 · 0 评论 -
笔记 Intent三种基本应用:
Intent是一个可以从另一个应用程序请求动作的消息处理对象,它可以实现组件间的通信,通常情况下:开启Activity将一个Intent对象传递给startActivity()方法,可以启动一个新的Activity,并且还可以携带一些必要的数据,也可以将Intent对象传递给startActvityForRestult()方法,在需要获取返回结果时,接收方就可以调用onActivityRes...原创 2019-07-22 14:33:09 · 325 阅读 · 0 评论 -
笔记 向Activity中添加Fragment:
向Activity中添加Fragment,有两种方法:直接在布局文件中添加,将Fragment作为Activity整个布局的一部分直接在布局文件中添加Fragment可以使用fragment /fragment标记实现在fragment /fragment标记中,android:name属性用于指定要添加的Fragment当Activity运行时,将Fragment放入Activity布...原创 2019-06-30 23:00:46 · 2860 阅读 · 0 评论 -
笔记 创建Fragment:
要创建一个Fragment,必须创建一个Fragment的子类,或者继承自另一个已经存在的Fragment的子类例:要创建一个名称为NewFragment的Fragment,并重写onCreateView()方法,可以使用下面的代码public class NewsFragment extends Fragment { @Nullable @Override publi...原创 2019-06-30 22:53:37 · 446 阅读 · 0 评论 -
笔记 GridView(网格视图)类:
GridView间接继承AdapterView类,所以可以包括多个列表项(AdapterView是一个抽象基类,它继承自ViewGroup类,属于容器,可以包括多个列表项,并且可以通过合适的方式显示,在指定多个列表项时,使用Adapter对象提供)按照行,列分布的方式来显示多个组件,通常用于显示图片或图标等GridView常用的XML属性:android:columnWidth 用于设置列...原创 2019-06-24 06:44:50 · 199 阅读 · 0 评论 -
笔记 ImageSwitcher(图像切换器)类:
ImageSwitcher间接继承于FrameLayout类,所以ImageSwitcher可以实现动画效果在使用时必须通过setFactory()方法为ImageSwitcher类设置一个ViewFactory,用于将显示的图片和父窗口区分开,setFactory()的参数需要通过实例化ViewSwitcher.ViewFactory接口的实现类来指定,在创建ViewSwitcher.View...原创 2019-06-24 06:43:12 · 411 阅读 · 0 评论 -
笔记 ImageView(图像视图)类:
ImgeView组件继承自View类ImageView支持的常用XML属性:android:adjustViewBounds 用于设置ImageView是否调整自己的边界来保持所显示的图片的长宽比android:maxHeight 设置ImageView的最大高度,需要设置android:adjustViewBounds属性值为true,否则不起作用android:maxW...原创 2019-06-24 06:42:04 · 330 阅读 · 0 评论 -
笔记 DatePicker类(日期选择器):
继承于FrameLayout,可以显示层叠的内容为了在程序中获取用户选择的日期还需要添加事件监听器OnDateChangedListener例:myDatePicker.init(year, month, day, new OnDateChangedListener() {@Overridepublic void onDateChanged(DatePicker view, int ye...原创 2019-06-20 07:23:01 · 722 阅读 · 0 评论 -
笔记 CheckBox类:
使用复选框可以选中多项,为了确定用户是否选择了某一项,还需要为每一个选项添加事件监听器final CheckBox 对象名 = (CheckBox)findViewById(R,id,复选框id);对象名.setOnCheckedChangeListener(new OnCheckedChangeListener()) {@OverridePublic void onCheckedCha...原创 2019-06-20 07:20:30 · 135 阅读 · 0 评论 -
笔记 RadioButton类:
在程序中一般将多个单选按钮放到一个组中android:checked属性用于指定选中状态,默认false通常情况下RadioButton组件需要和RadioButton组件一起使用RadioGroup可以设置android:orientation属性获取单选按钮组中选中项的值:1.在改变单选按钮组的值时获取a) 获取单选按钮组RadioGroup 对象名 = (Rad...原创 2019-06-20 07:19:14 · 190 阅读 · 0 评论 -
android的APP设置全屏
//设置全屏(将难看的标题栏去掉)getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN);原创 2019-06-20 07:15:21 · 947 阅读 · 0 评论 -
笔记 ImageButton类:
Imagebutton提供的属性:android:src属性:用于指定按钮上显示的图片 android:scaleType属性:用于指定图片的缩放方式不为图片按钮设置android:background属性,图片将显示在一个灰色的按钮上,图片按钮将带有一个灰色的边框,但图片按钮会随着用户动作而改变,一旦设置了android:background属性后(可以设置为#0000),按钮就不...原创 2019-06-20 07:14:30 · 1146 阅读 · 0 评论 -
Android利用Toast弹出提示信息:
Toast.makeText(MainActivity.this,“内容”,Toast.LENGTH_SHORT).show();原创 2019-06-20 07:13:17 · 6275 阅读 · 0 评论 -
笔记 Button类:
Button类继承与TextView类,TextView类所支持的属性Button类都是支持的单击事件监听器:Android提供了两种为按钮添加单击事件监听器的方法a) 在Java代码中完成,例:在onCreate()方法中添加Button myButton = (Button)findViewById(R.id.button);myButton.setOnClickListener(...原创 2019-06-20 07:11:40 · 308 阅读 · 0 评论 -
笔记 EditText类:
EditText类是TextView类的子类,TextView类支持的XML属性通常也支持EditText,在EditText组件中,android:inputType属性可以控制输入框的显示类型获取EditText中编辑的内容:先获取到编辑框组件,然后再调用getText();方法例如要获取一个id为myEditText的编辑框的内容:EditText editText = (EditT...原创 2019-06-20 07:09:21 · 230 阅读 · 0 评论 -
笔记 TimePicker类(时间选择器):
继承于FrameLayout,可以显示层叠的内容为了在程序中获取用户选择的时间,还需要为TimePicker组件添加事件监听器OnTimeChangedListener例:timePicker.setOnTimeChangedListener(new TimePicker.OnTimeChangedListener(){@OverridePublic void onTimeChanged...原创 2019-06-20 07:29:41 · 982 阅读 · 0 评论 -
笔记 Chronometer计时器:
该组件继承于TextView该组件用于显示一串文本,该文本为从某个时间开始,到现在一共过去的了多长时间Chronometer的XML属性:android:format 用于指定显示时间格式,其属性值可以设置为%s,表示显示MM:SS或者H:MM:SS格式的时间使用Chronometer组件时常用的方法:setBase():用于设置计时器的起始位置setFormat():用于设置显...原创 2019-06-20 07:32:37 · 224 阅读 · 0 评论 -
笔记 ProgressBar类(进度条):
继承于View类Android提供了水平进度条和圆形进度条ProgressBar支持的XML属性android:max用于设置进度条的最大值android:progress用于指定进度条已完成的进度值android:progressDrawable用于设置进度条轨道的绘制形式android:max 用于设置水平进度条的最大进度值android:style 用于为ProgressBa...原创 2019-06-22 07:26:38 · 1560 阅读 · 0 评论 -
解决android开发在选择Empty Activity后真机调试闪退情况
本人小米手机,练习开发的时候想试试真机测试结果发生闪退,本以为是API版本的问题,结果调试多次后依旧出现闪退现象,之后选择了其他的模板,发现可以在手机上正常运行了,进行对比后发现在Empty Activity模板创建后在AndroidMainfest.xml文件的标签中缺少了android:label和android:theme属性添加后成功运行...原创 2019-06-23 18:40:21 · 380 阅读 · 0 评论 -
笔记 RatingBar类(星级评分条):
间接继承于ProgressBar类支持的XML属性:android:isIndicator 用于指定该星级评分条是否允许用户改变,true表示不能改变android:numStars 用于指定该星级评分条默认的星级android:stepSize 用于指定每次最少需要改变多少个星级,默认是0.5常用方法:getRating(); 用于获取等级,表示选中了几颗星getStepSi...原创 2019-06-22 07:50:50 · 561 阅读 · 0 评论 -
笔记 SeekBar类(拖动条):
间接继承于ProgressBar类SeekBar组件允许用户改变拖动拖动滑块的外观,用android:thumb属性实现,属性值是一个Drawable对象,该Drawable将作为自定义滑块由于拖动条可以被用户控制,所以需要为其添加OnSeekBarChangeListener监听器:seekBar.setOnSeekBarChangeListener(new OnSeekBarChang...原创 2019-06-22 07:49:21 · 295 阅读 · 0 评论 -
笔记 RelativeLayout:相对布局管理器:
笔记 RelativeLayout:相对布局管理器:确定哪个组件为参考点,别的组件相对参考点组件相对摆放xmlns:android=http://schemas.android.com/apk/res/android 表示android的命名空间xmlns:tools=http://schemas.android.com/tools 定义工具命名空间无论哪种布局管理器以上两个属性值是...原创 2019-06-12 13:33:50 · 383 阅读 · 0 评论 -
笔记 TextView类:
TextView类是继承与View类的文本框类,用于存放文本内容并且文本内容不可被用户所编辑TextView常用的XML属性:android:autoLink 用于指定是否将指定格式的文本转换为可单击的超链接形式android:drawableBottom 用于在文本框内文本底端绘制指定图像android:drawableLeft 用于在文本框内文本的左侧绘制指定图像android:...原创 2019-06-16 08:19:25 · 318 阅读 · 0 评论 -
笔记 GridLayout:网格布局管理器:
网格布局管理器是Android4.0提出的,使用GridLayout表示,在网格布局管理器中,屏幕被虚拟的细线划分成行,列和单元格,每个单元格放置一个组件,并且这个组件也可以跨行或跨列摆放网格布局管理器和表格布局管理器的区别:网格布局管理器与表格布局有些类似,都可以以行,列的形式管理放入其中的组件,但是它们之间最大的不同就是网格布局管理器可以跨行显示组件,而表格布局管理器不能,表格布局管理器只...原创 2019-06-16 08:13:24 · 797 阅读 · 0 评论