先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7
深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年最新Android移动开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上Android开发知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
如果你需要这些资料,可以添加V获取:vip204888 (备注Android)
正文
<ImageView
android:id=“@+id/ivBook”
android:layout_width=“62dip”
android:layout_height=“42dip”
android:layout_gravity=“center”
android:layout_marginTop=“0dip”
android:gravity=“center”
android:src=“?btnColor” />
<Button
android:id=“@+id/btnSet”
android:layout_width=“wrap_content”
android:layout_height=“wrap_content”
android:layout_marginTop=“50dp”
android:text=“改变主题” />
<Button
android:id=“@+id/btnGet”
android:layout_width=“wrap_content”
android:layout_height=“wrap_content”
android:layout_marginTop=“50dp”
android:text=“Get Flag” />
下面就是在Activiy中定义要使用那种主题了:
public class MainActivity extends Activity {
private boolean blFlag = false;
private ImageView ivBook;
private Button btnSet;
private Button btnGet;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
this.setTheme(R.style.MyThemeDefault);
setContentView(R.layout.main);
btnSet = (Button) findViewById(R.id.btnSet);
btnGet = (Button) findViewById(R.id.btnGet);
ivBook = (ImageView) findViewById(R.id.ivBook);
btnSet.setOnClickListener(new onClickListenerImp());
btnGet.setOnClickListener(new onClickListenerImp());
ivBook.setOnClickListener(new onClickListenerImp());
}
class onClickListenerImp implements OnClickListener {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
if (v == btnSet || v == ivBook) {
if (blFlag) {
setTheme(R.style.MyThemeDefault);
blFlag = false;
} else if (!blFlag) {
setTheme(R.style.MyThemeNight);
blFlag = true;
}
setContentView(R.layout.main);
btnSet = (Button) findViewById(R.id.btnSet);
btnGet = (Button) findViewById(R.id.btnGet);
ivBook = (ImageView) findViewById(R.id.ivBook);
btnSet.setOnClickListener(new onClickListenerImp());
btnGet.setOnClickListener(new onClickListenerImp());
ivBook.setOnClickListener(new onClickListenerImp());
} else if (v == btnGet) {
Toast.makeText(MainActivity.this, "blFlag: " + blFlag,
Toast.LENGTH_SHORT).show();
}
}
}
}
setContentView(R.layout.main);
这句后面,要重新绑定各组件及其监听器,不然只能监听一次。这是因为在setContentView后,组件不是之前那个组件了。
到此,就实现了一个简单的主题切换实现夜间模式的小Demo。
有不明白的地方,欢迎交流。
加入SharedPreference标志,可以记忆上次选用的风格,从而下次启动时不必重置。
sharedPreferences = getSharedPreferences(“UseStyle”, Context.MODE_WORLD_READABLE);
isNight = sharedPreferences.getBoolean(“isNight”, false);
if (isNight) {
this.setTheme(R.style.MyThemeNight);
} else {
this.setTheme(R.style.MyThemeDefault);
}
public void onClick(View v) {
if (v == btnSet) {
Editor editor = sharedPreferences.edit();
if (isNight) {
setTheme(R.style.MyThemeDefault);
isNight = false;
} else {
setTheme(R.style.MyThemeNight);
isNight = true;
}
editor.putBoolean(“isNight”, isNight);
editor.commit();
setContentView(R.layout.main);
学习交流
群内有许多来自一线的技术大牛,也有在小厂或外包公司奋斗的码农,我们致力打造一个平等,高质量的Android交流圈子,不一定能短期就让每个人的技术突飞猛进,但从长远来说,眼光,格局,长远发展的方向才是最重要的。
35岁中年危机大多是因为被短期的利益牵着走,过早压榨掉了价值,如果能一开始就树立一个正确的长远的职业规划。35岁后的你只会比周围的人更值钱。
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
需要这份系统化的资料的朋友,可以添加V获取:vip204888 (备注Android)
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
围的人更值钱。
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
需要这份系统化的资料的朋友,可以添加V获取:vip204888 (备注Android)
[外链图片转存中…(img-6ayONuD0-1713668167751)]
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!