最后
其实Android开发的知识点就那么多,面试问来问去还是那么点东西。所以面试没有其他的诀窍,只看你对这些知识点准备的充分程度。so,出去面试时先看看自己复习到了哪个阶段就好。
虽然 Android 没有前几年火热了,已经过去了会四大组件就能找到高薪职位的时代了。这只能说明 Android 中级以下的岗位饱和了,现在高级工程师还是比较缺少的,很多高级职位给的薪资真的特别高(钱多也不一定能找到合适的),所以努力让自己成为高级工程师才是最重要的。
这里附上上述的面试题相关的几十套字节跳动,京东,小米,腾讯、头条、阿里、美团等公司21年的面试题。把技术点整理成了视频和PDF(实际上比预期多花了不少精力),包含知识脉络 + 诸多细节。
由于篇幅有限,这里以图片的形式给大家展示一小部分。
网上学习 Android的资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。希望这份系统化的技术体系对大家有一个方向参考。
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
标签的属性含义解释:
属性名 | 作用 |
menuCategory | 设置菜单项的种类。有四个可选值:Container、system、secondary、alternative。通过menuCategory属性可以控制菜单项的位置。 |
orderInCategory | 同类菜单的排列顺序,为整数值,值越大显示越靠前。 |
titleCondensed | 菜单项的短标题。当菜单文字太长时显示这个 |
alphabeticShortcut | 菜单项的字母快捷键。 |
showAsAction | Never:总是显示在移除菜单中。 Always:显示在ActionBar上。 ifRoom:如果actionBar空间足够就显示在ActionBar上。 withText:默认格式如果是含有文字和图表的话,只显示图标,使用ifRoom|withText可以显示图标和文字。 collapseActionView: <item android:id=”@+id/menu_search” android:showAsAction=”ifRoom|collapseActionView” android:actionViewClass=”android.widget.SearchView” /> android:showAsAction属性也可包含“collapseActionView”属性值,这个值是可选的,并且声明了这个操作视窗应该被折叠到一个按钮中,当用户选择这个按钮时,这个操作视窗展开。否则,这个操作视窗在默认的情况下是可见的,并且即便在用于不适用的时候,也要占据操作栏的有效空间。 参考链接:http://blog.csdn.NET/think_soft/article/details/7370686 |
标签的作用是可以进行整组操作,把一些具有相同操作的菜单放到一个组内。
在Activity里加载菜单
[java] view plain copy
-
@Override
-
public boolean onCreateOptionsMenu(Menu menu) {
-
// Inflate the menu; this adds items to the action bar if it is present.
-
getMenuInflater().inflate(R.menu.menu, menu);
-
return true;
-
}
方法二:通过代码添加menu
[java] view plain copy
-
@Override
-
public boolean onCreateOptionsMenu(Menu menu) {
-
//调用这个方法设置图标的可见性
-
setIconVisible(menu);
-
/*
-
* add()方法的四个参数,依次是:
-
* 1、组别,如果不分组的话就写Menu.NONE,
-
* 2、Id,这个很重要,Android根据这个Id来确定不同的菜单
-
* 3、顺序,那个菜单现在在前面由这个参数的大小决定,参数越小,显示的越前
-
* 4、文本,菜单的显示文本
-
*/
-
menu.add(Menu.NONE, Menu.FIRST + 1, 5, “删除”).setIcon(
-
android.R.drawable.ic_menu_delete);
-
// setIcon()方法设置菜单图标
-
menu.add(Menu.NONE, Menu.FIRST + 2, 2, “保存”).setIcon(
-
android.R.drawable.ic_menu_save);
-
menu.add(Menu.NONE, Menu.FIRST + 3, 6, “帮助”).setIcon(
-
android.R.drawable.ic_menu_help);
-
menu.add(Menu.NONE, Menu.FIRST + 4, 1, “添加”).setIcon(
-
android.R.drawable.ic_menu_add);
-
menu.add(Menu.NONE, Menu.FIRST + 5, 4, “详细”).setIcon(
-
android.R.drawable.ic_menu_info_details);
-
menu.add(Menu.NONE, Menu.FIRST + 6, 3, “发送”).setIcon(
-
android.R.drawable.ic_menu_send);
-
return true;
-
}
-
//使用反射设置menu图标的可见性
-
private void setIconVisible(Menu menu) {
-
try {
-
Class clazz = Class
-
.forName(”com.android.internal.view.menu.MenuBuilder”);
-
Method m = clazz.getDeclaredMethod(”setOptionalIconsVisible”,
-
boolean.class);
-
m.setAccessible(true);
-
m.invoke(menu, true);
-
} catch (Exception e) {
-
e.printStackTrace();
-
}
-
}
菜单显示效果如下图:
选项菜单设置点击监听
[java] view plain copy
总结
【Android 详细知识点思维脑图(技能树)】
其实Android开发的知识点就那么多,面试问来问去还是那么点东西。所以面试没有其他的诀窍,只看你对这些知识点准备的充分程度。so,出去面试时先看看自己复习到了哪个阶段就好。
虽然 Android 没有前几年火热了,已经过去了会四大组件就能找到高薪职位的时代了。这只能说明 Android 中级以下的岗位饱和了,现在高级工程师还是比较缺少的,很多高级职位给的薪资真的特别高(钱多也不一定能找到合适的),所以努力让自己成为高级工程师才是最重要的。
这里附上上述的面试题相关的几十套字节跳动,京东,小米,腾讯、头条、阿里、美团等公司19年的面试题。把技术点整理成了视频和PDF(实际上比预期多花了不少精力),包含知识脉络 + 诸多细节。
由于篇幅有限,这里以图片的形式给大家展示一小部分。
网上学习 Android的资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。希望这份系统化的技术体系对大家有一个方向参考。
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
技术体系对大家有一个方向参考。
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!