布局文件 Preference Fragment Preference Activity管理Fragment 适配 ---- 前言 转来转去又回到了Android,闲话少说,这里是参考Android原生的...---- preferences_scenario_1.xml 我们先通过xml文件来定义一个简单的preference界面,res/xml/preference_scenario_1.xml: <?...类来呈现Preference Screens。...---- Preference Fragment 示例代码如下: import android.os.Bundle; import android.preference.PreferenceFragment..._1); } } ---- Preference Activity管理Fragment 示例代码如下: import android.os.Bundle; import android.preference.PreferenceActivity
1 Preference介绍 1 Preference组件基础知识 Preference布局采用Preference组件以及继承Preference的组件,比如EditTextPreference...在布局之前先介绍几个Preference组件。...3 Preference组件监听事件 Preference.OnPreferenceClickListener,Preference组件监听和OnClickListener一样的。...2 开发中使用Preference组件遇到的问题 Preference组件的样式应用是不能继承使用,如在android_frameworks_base中。...简单说,Preference组件其实就是Android常见UI组件与SharePreferences的组合封装实现。
如果继承自Preference则不需要自己控制Preference的读写,PreferenceActivity会为我们处理一切。...你的每一次设置,都会被Preference自动保存下来,这就是setting的数据持久化。每个Preference都是以键值对的形式保存下来的。...preference) 当任何一个preference控件被点击,都将触发该方法。...但是可以通过preference.getKey()这个方法找到具体是哪个preference被点击了,因为每个preference的key都是唯一的。...; 5 import android.preference.EditTextPreference; 6 import android.preference.Preference; 7 import
summary="@string/pref_defult_mqtt_pswd" /> 使用Header跳转页面 使用preference-headers...进行实现,在res/xml文件夹新建pref_headers.xml </preference-headers
PreferenceFragment 负责加载选项设置界面布局文件 使用PreferenceFragment的步骤 PreferenceActivity 负责加载选项列表界面布局文件 选项列表布局文件是以preference-headers...使用界面布局文件的方式是:重写PreferenceActivity.onBuildHeaders(List target)并在方法中调用loadHeadersFromResource(R.xml.preference...A.在res目录上右击,在弹出的快捷菜单上选择new->Android Resource File,然后在弹出的对话框选择Resource type 为xml,Root element:选择preference-headers...代码如下: package com.example.filedemo; import android.os.Bundle; import android.preference.PreferenceActivity...PreferenceFragment使用界面布局文件的方式是:重写onCreate(Bundle savedInstanceState) 并在方法中调用addPreferenceFromResource(R.xml.preference_option
// MongoDB读策略之read Preference // 01 read Preference概念 Read Preference描述MongoDB客户端如何路由读操作到复制集成员。...定义这个读取顺序的选项,就是Read Preference。 ?...Read Preference这个选项由read preference mode、tag set以及maxStalenessSeconds参数组成(后两者可选)。...注意: 1、选定除Primary之外的Read Preference可能返回旧的数据,因为复制是异步进行的。...02 选项 Read Preference常见的模式: 1、primary 默认模式,当前的读操作都从primary上面读。
) { Log.i(“INFO”, preference.getKey()); // 也可以通过 KEY 获取 // findPreference(“child_checkbox_preference...”) if (preference.getKey().equals(“child_checkbox_preference”)) { CheckBoxPreference child_checkbox_preference...(“child_checkbox_preference”).setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener...() { @Override public boolean onPreferenceChange(Preference preference, Object newValue) { // 返回...preference = new Preference(getActivity()); preference.setTitle(software.getString(“name”)); preference.setSummary
这些设置一般都会使用Preference来保存,Android专门为这种Activity提供了便捷的基类PreferenceActivity(如果是Fragment,使用PreferenceFragment...,现在推荐使用v7包下的PreferenceFragmentCompat),这些类内部封装了Preference,会帮我们自动读写设置,方便开发者便捷完成这类功能。...PreferenceFragment使用 PreferenceFragment位于android.preference包下,现在推荐使用v7包下的,这里还是使用这个来说明,原理是一样的。...() { @Override public boolean onPreferenceClick(Preference preference) { //todo return true; } })...来实现自定义控件 public class ThemePreference extends Preference { private CircleView circleImageView; public
首先来看看Preference的xml文件preference.xml: <PreferenceScreen xmlns:android="http://schemas.android.com/apk/...; import android.<em>preference</em>.<em>Preference</em>; import android.<em>preference</em>.PreferenceManager; import android.<em>preference</em>.<em>Preference</em>.OnPreferenceChangeListener...; import android.<em>preference</em>.<em>Preference</em>.OnPreferenceClickListener; import android.<em>preference</em>.PreferenceFragment...<em>preference</em>, Object newValue) { // TODO Auto-generated method stub if(<em>preference</em> == checkBox1){ if((Boolean...<em>preference</em>) { // TODO Auto-generated method stub // if(<em>preference</em> == checkBox1){ // //得到我们的存储Preferences
2、修改local preference改变选路 默认情况下R4的bgp表中: R4#sh ip bgp BGP table version is 2, local router ID is 44.44.44.44...0 23 1 i *> 24.1.1.2 0 23 1 i 修改local_preference...route-map local-pref per 10 R4(config-route-map)#mat ip add prefix-list 1 R4(config-route-map)#set local-preference...34.1.1.3 200 0 23 1 i 如果在此基础上我们修改R2过来路由的weight,来比较weight和local-preference...0 23 1 i *> 24.1.1.2 100 23 1 i Weight的优先级确实比local-preference
删除Preference 删除key为rmcache的Preference,这个Preference是PreferenceScreen root的子节点. 1 2 3 PreferenceScreen...* * @param preference The preference to remove....(Preference preference) { final boolean returnValue = removePreferenceInt(preference);...Preference. findPreference实现 findPreference查找不仅仅限于直接子Preference,会遍历其所有的子Preference....当存在key相同的Preference时,如果removePreference不限定直接子Preference,那么无法准确删除哪一个.
2.3、空操作一般作为数据流的终点。在kettle的sample例子中经常使用,但是实际开发中很少使用。
文章目录 一、Flutter 布局相关的组件简介 二、Row 和 Column 组件 三、SizedBox 组件 四、ClipOval 组件 五、 完整代码示例 六、 相关资源 一、Flutter 布局相关的组件简介...组件从左到右 ; Wrap : 该组件与 Row 组件类似 , Wrap 组件可以换行 ; Flow : 不常用 ; ParentDataWidget : Positioned : 用于固定组件位置的组件...; Flexible : 用于约束组件在父容器中展开大小的组件 ; 二、Row 和 Column 组件 ---- Row 组件相关参数 : Row 组件相当于线性布局 , 水平方向布局 , 组件从左到右...>[ 组件1, 组件2, 组件3, ] ) // 垂直方向排列的线性布局 Column( children: [ 组件1, 组件2,..., 即可将该组件裁剪 ; 代码示例 : 此处 ClipOval 组件对 SizedBox 组件进行圆形裁剪 , SizedBox 组件约束 Image 组件的大小 ; // 圆形裁剪组件 , 将 child
文章目录 一、CloseButton 关闭按钮组件 二、BackButton 回退按钮组件 三、Chip 组件 四、 相关资源 一、CloseButton 关闭按钮组件 ---- 通常用于作为关闭界面的按钮..., 居中放置 alignment: Alignment.center, // 子组件, 子组件设置为一个 Column 组件 child:..., 居中放置 alignment: Alignment.center, // 子组件, 子组件设置为一个 Column 组件 child:...---- Chip 组件比较复杂 , 可设置的配置较多 , 可参考其源码逐个研究每个字段的含义 ; Chip 组件源码 : 下面是 Chip 组件构造函数源码 ; class Chip extends..., 居中放置 alignment: Alignment.center, // 子组件, 子组件设置为一个 Column 组件 child:
文章目录 一、Divider 组件 二、Card 卡片组件 三、AlertDialog 对话框组件 四、 相关资源 一、Divider 组件 ---- Divider 组件是分割线组件 , 可以设置高度...@override Widget build(BuildContext context) { // 文本组件样式 , 可以设置给 Text 文本组件 // 设置字体大小 20, 颜色红色..., 居中放置 alignment: Alignment.center, // 子组件, 子组件设置为一个 Column 组件 child:..., 居中放置 alignment: Alignment.center, // 子组件, 子组件设置为一个 Column 组件 child:..., 居中放置 alignment: Alignment.center, // 子组件, 子组件设置为一个 Column 组件 child:
文章目录 一、StatelessWidget 组件 二、Container 组件 三、BoxDecoration 组件 四、Text 组件 五、Icon 组件 六、 相关资源 一、StatelessWidget...组件 ---- Flutter 中一切都是组件构成的 ; 其中最重要的两个组件是 ① 无状态的 StatelessWidget 组件 和 ② 有状态的 StatefulWidget 组件 ; StatelessWidget...是 Flutter 中不需要状态改变的 Widget 组件 , 其内部没有需要管理的状态 ; StatelessWidget 组件延伸出以下组件 : Container : 容器组件 ; Text :...文本组件 ; Icon : 图标组件 ; CloseButton : 关闭按钮组件 ; BackButton : 返回按钮组件 ; Chip : Divider : 分割线组件 ; Card : 卡片容器组件...; AlertDialog : 弹窗组件 ; 二、Container 组件 ---- Container 组件 : 容器组件 ; 继承 StatelessWidget , 可以通过约束其 this.child
文章目录 一、Opacity 组件 二、ClipRRect 组件 三、Padding 组件 四、完整代码示例 五、相关资源 一、Opacity 组件 ---- Opacity 组件 : 用于修改组件透明度...1.0 ; 设置调节透明度的组件 : child 字段设置要调整透明度的组件 ; // 修改透明度组件 Opacity( opacity: 透明度值, child: 要调整透明度的组件...width: 100, height: 100, ), ), 二、ClipRRect 组件 ---- ClipRRect 组件 : 裁剪方形布局的组件 ; class ClipRRect...; 设置被裁剪的组件 : child 字段设置被裁剪的组件 // 方形裁剪组件 , 将组件裁剪成方形 child: ClipRRect( // 设置裁剪圆角 borderRadius: 圆角参数...( BorderRadius 类型 ), // 被裁剪的组件 child: 被裁剪的组件 ( Widget 类型 ), ), 代码示例 : // 方形裁剪组件 , 将组件裁剪成方形 child
文章目录 一、StatefulWidget 组件 二、创建 StatefulWidget 组件 三、MaterialApp 组件 四、Scaffold 组件 五、 相关资源 一、StatefulWidget...组件 ---- StatefulWidget 组件是 有状态组件 , 有如下常用的基础组件 : MaterialApp : 材料设计 APP 组件 , 通常用作页面的根节点 ; Scaffold :..., 居中放置 alignment: Alignment.center, // 子组件, 子组件设置为一个 Column 组件 child:...---- MaterialApp 组件是 材料设计 ( Material Design ) APP 组件 , 通常用作页面的根节点 ; MaterialApp 组件是 StatefulWidget 的子类..., 侧边栏组件 , 使用该组件可以很容易实现一个复杂的导航页面 ; Scaffold 组件常用设置选项 : 顶部标题栏设置 : appBar ; 界面主体子组件设置 : body ; 悬浮按钮设置 :
组件 组件可以扩展 HTML 元素,封装可重用的代码。在较高层面上,组件是自定义元素,Vue.js 的编译器为它添加特殊功能。在有些情况下,组件也可以是原生 HTML 元素的形式,以is特性扩展。...这意味着不能 (也不应该) 在子组件的模板内直接引用父组件的数据。要让子组件使用父组件的数据,我们需要通过子组件的 props 选项。...父组件通过props来给子组件传递数据,子组件需要显示的用props选项声明props。...可以通过v-bind动态的绑定props的值到父组件的数据中,每次当绑定的数据在父组件中发生改变的时候,该组件也会相应的传递给子组件。...prop值 prop是单向绑定的,当父组件的属性变化时,将传递给子组件,但是在子组件中改变数据的时候并不会传递给父组件(为了防止子组件无意间修改父组件的状态),所以不应该在子组件中改变prop的数据。
文章目录 一、Image 组件 二、TextField 组件 三、 相关资源 一、Image 组件 ---- Image 组件有多个命名构造函数 , 可以从 文件 / 内存 / 网络 / Assets..., 居中放置 alignment: Alignment.center, // 子组件, 子组件设置为一个 Column 组件..., 居中放置 alignment: Alignment.center, // 子组件, 子组件设置为一个 Column 组件 child:..., 居中放置 alignment: Alignment.center, // 子组件, 子组件设置为一个 Column 组件..., 居中放置 alignment: Alignment.center, // 子组件, 子组件设置为一个 Column 组件 child:
领取专属 10元无门槛券
手把手带您无忧上云