Android Studio Note

 To quickly open any class in the editor,press⌘O(Navigate | Class)

You can open any file in your project in a similar way by using⇧⌘O(Navigate | File).

To quickly see the documentation for the class or method used at the editor's caret,press F

Cmd + click

 ⇧F6换所有的地方

⌘N  getter setter

app--12宫格显示图片

kaixinxiaoxiaole--按钮的相对布局

javacontrollayout--有点击事件/用Java重写xml布局

rabbit--图片在背景图片下的手动移动,ActionView自建actionbar--actionViewClass和actionLayout),画图paint,canvas

PaintCanvasAnimation--画矩形,DrawText,读取SD卡,Bitmap,BitmapFactory

buttonclick--点击事件

AlterAndChoose--Radiobutton的选择并且弹出对话框,四种AlertDialog.Builder

weixinlinerlayout--登录界面

friend--朋友圈界面(混合布局)长按事件onLongClickListener,举报; 上下文菜单;显示隐藏ActionBar

DatePicker--日期选择器,以及java对日子的处理https://www.cnblogs.com/xqz0618/p/12156241.html这个简洁好看

Chronometer--计时器,60秒停止

ProgressBar--是个View类,进度条,开了另一个线程thread,用了handler,好难。。进度条SeekBar也写在了上面,用图片thumb;https://www.tutorialspoint.com/android/android_progress_circle.htm

TimePicker--时间选择器,isIndicator是否用作指示,用户无法更改,android:stepSize,,闹钟

RatingBar--星际评分条

ImageView--(图像视图)https://www.runoob.com/w3cnote/android-tutorial-imageview.html      https://www.cnblogs.com/xqz0618/p/imageview.html

微信登录----因为是orientation="vertical",所以老师把登录两个字改成了图片用的drawable:left来放在左边,因为只能按列移动,横向不行除非再次包裹一圈linelayout然后设置水平。里面还改了主题颜色(manifest--lable和theme改了)EditText;输入密码变登录按钮颜色drawable enable;改变主题theme;<style>属性可以继承parent="@style/AppTheme; Menu菜单栏;ActionBar...跳转到相应的页面

ImageSwitcher--图片切换下一张那种???????太复杂https://www.tutorialspoint.com/android/android_imageswitcher.htm

https://www.bilibili.com/video/av22836860?p=61

GridAdapter--网格(GridView实例),把图片资源通过适配器SimpleAdapter展出出来,第二个例子是BaseAdapter改写, 还有点按钮启动第二个activity的方法,intent和bundle传递数据,intent component属性;bundle只能传0.5m数据,多了就会 OOM,全称“Out Of Memory”;跳转网址去第三个activity并且用actionbar返回

ListView--列表,用了SimpleAdapter

TabHost--选项卡

*(没成功图片有问题)ChooseProfilePicture--点击按钮,跳到另一页里选择一个图片,然后把图片放到第一页

FragmentNavigator--按不同导航栏,页面显示不同内容https://www.runoob.com/w3cnote/android-tutorial-fragment-demo1.html

CallMessage--intent.setAction;打电话,发短信,返回桌面intent.addCategory;onKeyUpSystem.currentTimeMillis(),动态设置textView.setText(getResources().getString(R.string.motto)); 改Sdk版本1.project 2.找到demo文件名3.build.gradle 文件里面minSdkVersion15

GestureDetector----flipping翻动相册https://www.bilibili.com/video/av22836860?p=103     https://www.runoob.com/w3cnote/android-tutorial-gestures.html

ScreenOrientation--翻转页面数据不丢失,固定竖屏:activity下面去添一句话: android:screenOrientation="portrait";国际化,变换语言后的对应

ViewModel--JetPack里的新属性,翻转页面不需要去保存数据



1. 一个project下有很多个module,一个module相当于一个小程序,比如微信啊,打电话啊。

2.app就是一个module

3.activity_main.xml就是一个布局文件

4.R文件创建错误的解决方法

Build—>Clean project


5.layout_width="wrap_content" 就是下面的组件根据自身大小来决定这个layout的宽度,就是子键多大,它就多大。layout_marginLeft(也可以叫Start)就是这个组周围的margin

6.text可以直接在xml里面输入,也可以引用values下面的strings.xml把字先设定好;Text还有testSize,testColor等;     背景图片可以先拷贝到mipmap同级目录下,之后引用android:background="@mipmap/bg"

7.FrameLayout帧布局管理器一般是自定义view用,一层层的覆盖上去,像z-index,比如做一个钟,时针分针秒针堆叠上去。关键词foreground一般选择一张图表示一直在最上面那层不能被覆盖,foregroundGravity把这层放在哪儿right|bottom,而且会变成本来大小而不是全部覆盖

RelativeLayout需要确定以哪个点为参考点,比如教室中间那个学生,其他学生挨着他就是参考他。两个关键选项android:gravity="center";居中显示。 android:ignore="@id/下面text的id"这个不受控制

https://www.runoob.com/w3cnote/android-tutorial-relativelayout.html

GridLayout网格布局管理器----https://www.runoob.com/w3cnote/android-tutorial-gridlayout.html直接看计算器的一个设计图。注意点:android:layout_rowSpan与android:layout_columnSpan设置了组件横跨 多行或者多列的话,如果你要让组件填满横越过的行或列的话,需要添加下面这个属性: android:layout_gravity = "fill";drawable的focus属性改变TextEidor背景色

LinearLayout线型布局管理器:两个关键点一:android:orientation="horizontal"横竖选择 二weight权重:是分配剩余的一人一半



TableLayout表格管理器

https://www.runoob.com/w3cnote/android-tutorial-tablelayout.html

android:collapseColumns:设置需要被隐藏的列的序号

android:shrinkColumns:设置允许被收缩的列的列序号

android:stretchColumns:设置运行被拉伸的列的列序号

以上这三个属性的列号都是从0开始算的,比如shrinkColunmns = "2",对应的是第三列!

可以设置多个,用逗号隔开比如"0,2",如果是所有列都生效,则用"*"号即可

除了这三个常用属性,还有两个属性,分别就是跳格子以及合并单元格,这和HTML中的Table类似:

android:layout_column="2":表示的就是跳过第二个,直接显示到第三个格子处,从1开始算的!

android:layout_span="4":表示合并4个单元格,也就说这个组件占4个单元格

8.可在xml里面编写布局,也可直接在java代码里写布局


UI组件

ViewText:singleLine=”true“,显示不到的排到后面;minLines=3至少有三行,没有后面空的要留出高度;maxWidth=180dp把文本宽度调好才好换行,文本框添加一个背景图

EditText:hint,input="password":textColorHint提示的颜色,drawableStart添加一个图放在文字左边,getText拿到输入内容,capitalize(sentences仅第一个字母大写words每一个单词首字母大小characters:每一个英文字母都大写0

ImageView:scaletype=FitXY图片就会撑满

ImageButton:#0000变成透明不然下面是默认的灰色

autoLink属性识别链接类型



只允许横屏显示:Adroid:sceenOrientation="landscape" 添加在activity下面

Log.d(msg, "The onStart() event");

Adapter

是用来帮助填充数据的中建桥梁,简单点说就是:将各种数据以合适的形式显示到view上,提供给用户看。而这个Adapter则是中间的这个Controller的部分: Model(数据) ---> Controller(以什么方式显示到)---> View(用户界面) 这就是简单MVC组件的简单理解!

Log.d(msg, "The onStart() event");



Activity

--有很多基本功能都有了
https://www.runoob.com/w3cnote/android-tutorial-activity.html

刷新onCreate(null)


Intent

intent.setFlags NO_HISTORY退出就直接退出了;intent.setAction (SENTO);打电话,发短信,返回桌面intent.addCategory (HOME) 总结的很好https://www.runoob.com/w3cnote/android-tutorial-intent-base.html



public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View view = inflater.inflate(R.layout.fg_content, container, false); tv_content = (TextView) view.findViewById(R.id.tv_content); String text = getArguments().getString("text"); tv_content.setText(text); return view; }


EnventListener

Android事件处理机制中的基于回调的事件处理机制进行了讲解!核心就是事件传播的顺序 监听器优先,然后到View组件自身,最后再到Activity;返回值false继续传播,true终止传播~!


九图

https://www.bilibili.com/video/av22836860?p=114


Toolbar代替Actionbar

<!--这里是代替actionbar的,当然可以设置在baseactivity中通用,然后include进来--><android.support.v7.widget.Toolbarandroid:id="@+id/toolbar"xmlns:android="http://schemas.android.com/apk/res/android"android:orientation="vertical"android:layout_width="match_parent"android:background="?attr/colorPrimary"android:layout_height="wrap_content"android:minHeight="?attr/actionBarSize"></android.support.v7.widget.Toolbar>

https://www.jianshu.com/p/81d0bcb282cb


Notification通知 Broadcast广播


.使用系统定义好的color:

比如:BLACK(黑色),BLUE(蓝色),CYAN(青色),GRAY(灰色),GREEN(绿色),RED(红色),WRITE(白色),YELLOW(黄色)! 用法: btn.setBackgroundColor(Color.BLUE); 也可以获得系统颜色再设置:

int getcolor = Resources.getSystem().getColor(android.R.color.holo_green_light); 

btn.setBackgroundColor(getcolor); 

xml中使用:android:background="@android:color/black"


魔法棒,

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,189评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,577评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,857评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,703评论 1 276
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,705评论 5 366
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,620评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,995评论 3 396
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,656评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,898评论 1 298
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,639评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,720评论 1 330
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,395评论 4 319
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,982评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,953评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,195评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,907评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,472评论 2 342