最后
分享一份NDK基础开发资料
分享内容包括不限于高级UI、性能优化、架构师课程、NDK、混合式开发(ReactNative+Weex)微信小程序、Flutter等全方面的Android进阶实践技术;希望能帮助到大家,也节省大家在网上搜索资料的时间来学习,也可以分享动态给身边好友一起学习!
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
public void onTabChanged(String tabId) {
for(int i = 0; i < tabWidget.getChildCount(); i++) {
View tabView = tabWidget.getChildAt(i);
TextView tv= tabWidget.getChildAt(i).findViewById(android.R.id.title);
if(tabHost.getCurrentTab() == i) { // 选中
tabView.setBackgroundResource(R.drawable.tabhost_selected_true);
tv.setTextSize(14);
} else { // 未选中
tabView.setBackgroundResource(R.drawable.tabhost_selected_false);
tv.setTextSize(12);
}
}
}
});
for (int i = 0; i < tabWidget.getChildCount(); i++) {
View view = tabWidget.getChildAt(i);
LinearLayout.LayoutParams layoutParams = (LinearLayout.LayoutParams) view.getLayoutParams();
// 设置默认的选项卡背景颜色与字体大小
TextView textView = tabWidget.getChildAt(i).findViewById(android.R.id.title);
//view.setBackgroundColor(R.color.grey2);
textView.setTextSize(12);
// 设置第一个选项卡被选中时的样式
TextView tvDefault = tabWidget.getChildAt(0).findViewById(android.R.id.title);
tabWidget.getChildAt(0).setBackgroundResource(R.drawable.tabhost_selected_true);
tvDefault.setTextSize(14);
//获取tabs图片;
//ImageView iv=(ImageView)tabWidget.getChildAt(i).findViewById(android.R.id.icon);
layoutParams.width = LinearLayout.LayoutParams.MATCH_PARENT;
layoutParams.height = 130;
layoutParams.weight = 0.0f;
}
}
public void initEvent() {
}
public void initAdapter() {
}
}
fragment_middle 代码如下:
<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android=“http://schemas.android.com/apk/res/android”
xmlns:tools=“http://schemas.android.com/tools”
android:layout_width=“match_parent”
android:layout_height=“match_parent”
tools:context=“.activity.MainActivity”>
<TabHost
android:id=“@android:id/tabhost”
android:layout_width=“match_parent”
android:layout_height=“match_parent”
android:layout_alignParentLeft=“true”>
<LinearLayout
android:layout_width=“match_parent”
android:layout_height=“match_parent”
android:orientation=“horizontal” >
<TabWidget
android:id=“@android:id/tabs”
android:layout_width=“90dp”
android:layout_height=“match_parent”
android:orientation=“vertical”
android:gravity=“top”>
<FrameLayout
android:id=“@android:id/tabcontent”
android:layout_width=“match_parent”
android:layout_height=“match_parent” >
res/values/string.xml 中加入
语文
数学
选中的背景样式
tabhost_selected_true.xml
<?xml version="1.0" encoding="utf-8"?>最后
都说三年是程序员的一个坎,能否晋升或者提高自己的核心竞争力,这几年就十分关键。
技术发展的这么快,从哪些方面开始学习,才能达到高级工程师水平,最后进阶到Android架构师/技术专家?我总结了这 5大块;
我搜集整理过这几年阿里,以及腾讯,字节跳动,华为,小米等公司的面试题,把面试的要求和技术点梳理成一份大而全的“ Android架构师”面试 Xmind(实际上比预期多花了不少精力),包含知识脉络 + 分支细节。
网上学习 Android的资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。希望这份系统化的技术体系对大家有一个方向参考。
2021年虽然路途坎坷,都在说Android要没落,但是,不要慌,做自己的计划,学自己的习,竞争无处不在,每个行业都是如此。相信自己,没有做不到的,只有想不到的。祝大家2021年万事大吉。
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
相信自己,没有做不到的,只有想不到的。祝大家2021年万事大吉。
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!