- 博客(5)
- 收藏
- 关注
原创 Django Form和ModelForm组件
通常在Django项目中,我们编写的大部分都是与Django的模型紧密映射的表单。在这种情况下,在form表单中定义字段将是冗余的,因为我们已经在模型中定义了那些字段。在这种情况下,在form表单中定义字段将是冗余的,因为我们已经在模型中定义了那些字段。在使用选择标签时,需要注意choices的选项可以配置从数据库中获取,但是由于是静态字段获取的值无法实时更新,需要重写构造方法从而实现choice实时更新。除了上面两种方式,我们还可以在Form类中定义钩子函数,来实现自定义的验证功能。
2025-01-19 19:00:55
308
原创 Dialog对话框(此5种)
Toast.makeText(MainActivity.this,“点击了确认按钮”,Toast.LENGTH_SHORT).show();Toast.makeText(MainActivity.this,“点击了取消按钮”,Toast.LENGTH_SHORT).show();Toast.makeText(MainActivity.this,“点击了忽略按钮”,Toast.LENGTH_SHORT).show();progressDialog.setTitle(“进度条Dialog标题”);
2025-01-19 18:56:46
419
原创 Android面试中常问的MMAP到底是啥东东?看这一篇就够了!_android mmap是什么
1、组合控件。这种自定义控件不需要我们自己绘制,而是使用原生控件组合成的新控件。如标题栏。2、继承原有的控件。这种自定义控件在原生控件提供的方法外,可以自己添加一些方法。如制作圆角,圆形图片。3、完全自定义控件:这个View上所展现的内容全部都是我们自己绘制出来的。比如说制作水波纹进度条。:测量视图大小。从顶层父View到子View递归调用measure方法,measure方法又回调OnMeasure。OnLayout():确定View位置,进行页面布局。
2025-01-18 21:45:02
404
原创 Android面试一(Activity面试)
设置的标签还有:FLAG_ACTIVITY_NEW_TASK,A打开设置该标签的B,如果B设置了TaskAffinity,并拥有相同的task栈,则压入该栈,否则压入新栈,如果没有设置TaskAffinity,则压入A所在的栈。onResume(),onPause():可以与用户交互了,不可交互了,从位于前台(UI最顶层)的角度考虑,如弹出弹框不可交互时也会调用这组方法。1.1,栈顶到栈底A,B,C,其中AB是standard模式,C是singleTask模式,从A打开C,栈内情况?
2025-01-18 21:43:01
262
原创 6 个实用的 Code Review 实践技巧
这将帮助你的评审人专注于适当的领域,提出适当的反馈。在最极端的情况下,代码作者会陆续收到各个部分的评审反馈,几乎可以不间断地处理完这一系列 PR,而不是完成初稿后,等上几天(已经去忙其他的事),然后最后再返回头来处理反馈意见。作为评审人,会先评审 PR 描述,如果它不够完整,你是无法针对未定义的目标来判断代码是否适当的,不如在评审代码前就把它打回去。同时引入了类库升级和新的服务?无论你的团队遵循哪些原则,请记住,作为一名代码的作者,你有责任寻求并接受适当的人对你的代码进行高质量的 code review。
2025-01-18 09:23:51
802
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人