IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 移动开发 -> Xamarin 总结 (官方文档笔记) -> 正文阅读

[移动开发]Xamarin 总结 (官方文档笔记)

1. ContentDescription 一个 属性,供屏幕读取 API 使用,以提供控件用途的可访问说明。

<ImageButton
    android:id=@+id/saveButton"
    android:src="@drawable/save_image"
    android:contentDescription="Save data" />

2. android:hint 在EditText 提供预期输入。

<EditText
    android:id="@+id/someText"
    android:hint="Enter some text" />

3.LabelFor若要将标签与数据输入控件关联

<TextView
    android:id="@+id/labelFirstName"
    android:hint="Enter some text"
    android:labelFor="@+id/editFirstName" />
<EditText
    android:id="@+id/editFirstName"
    android:hint="Enter some text" />

4.?Focusable 将控件标记为在导航期间特别能够接收焦点。??还可使用 nextFocus DownnextFocus LeftnextFocus RightnextFocusUp属性(通常在布局 AXML 中设置)控制焦点顺序。 使用这些属性确保用户可以轻松地浏览屏幕上的控件。

label.Focusable = false;
<android:focusable="false" />

5?辅助功能和本地化? 在文件存储?文件中Strings.xml 可以直接从字符串文件中查找转换后的值

Resources.GetText:

6.?resource目录下称为 "?默认资源?",并由所有设备使用,包括drawable layout values 等?此外,每种类型的资源可能有可选的?备用资源?,Android 可能会使用这些资源来定位特定设备。 例如,可能会提供资源以面向用户的区域设置、屏幕大小,或者设备是否旋转了90度(从纵向到横向)等。在上述每种情况下,Android 都将加载用于应用程序的资源,而无需开发人员进行任何额外的编码工作。

7.安卓的活动周期详见上一博客? 官方图

Running :??这会被视为 Android 中优先级最高的活动,因此,只有在极端情况下,操作系统才会终止此活动,如活动尝试使用比设备上提供的内存更多的内存,这可能会导致 UI 无响应

Paused:?当设备进入睡眠状态,或者活动仍可见,但活动仍被新的、未完全大小的或透明的活动隐藏时,该活动被视为已暂停。 暂停的活动仍处于活动状态,即,它们维护所有状态和成员信息,并保持附加到窗口管理器。

以上为安卓自带返回和home键? 如果单击back键 会告诉安卓这个activity 已经完成 ,安卓进行销毁(Destroy)。但是如果点击home activity 位于活动后台(Pause)不会终止

?8. 绑定状态? ?Bundle

当创建?OnCreate?了向其传递捆绑作为参数的方法的活动时,可以使用此绑定来还原实例状态

  • OnSaveInstanceState?–在销毁活动时,Android 会调用此方法。 如果活动需要保留任何键/值状态项,则这些活动可以实现此方法。

  • OnRestoreInstanceState?–在方法完成后?调用此方法,并且为活动提供了在初始化完成后恢复其状态的另一种机会。

    int c;
    
    protected override void OnCreate (Bundle bundle)
    {
      base.OnCreate (bundle);
    
      this.SetContentView (Resource.Layout.SimpleStateView);
    
      var output = this.FindViewById<TextView> (Resource.Id.outputText);
    
      if (bundle != null) {
        c = bundle.GetInt ("counter", -1);
      } else {
        c = -1;
      }
    
      output.Text = c.ToString ();
    
      var incrementCounter = this.FindViewById<Button> (Resource.Id.incrementCounter);
    
      incrementCounter.Click += (s,e) => {
        output.Text = (++c).ToString();
      };
    }
    ///当单击名 incrementCounter 为的按钮时,上面的代码会递增名为 c 的整数,并将结果显示在一个名 output 为的 TextView 中。 发生配置更改时(例如,当设备旋转时),上面的代码将丢失的值 c 所以要重写 OnSaveInstanceState 
    protected override void OnSaveInstanceState (Bundle outState)
    {
      outState.PutInt ("counter", c);
      base.OnSaveInstanceState (outState);
    }

    尽管可以轻松地保存暂时性数据,但?OnSaveInstanceState?有一些限制:

  • 在所有情况下均不会调用它。 例如,按?Home?或?Back?退出活动将不会导致?调用。

  • 传入?OnSaveInstanceState?的捆绑包不适用于大型对象,例如图像。 对于大型对象,如下面所述,保存?OnRetainNonConfigurationInstance?中的对象更可取。

9. 保留复杂数据? ?OnRetainNonConfigurationInstance重写OnRetainNonConfigurationInstance? ?官网有搜索 Twitter 的代码

10 查询当前使用语言Local?

var lang = Resources.Configuration.Locale


//实例
en_US对于英语 (美国)
es_ES 对于西班牙语 (西班牙)
ja_JP 对于日语 (日本)
zh_CN 对于中文 (中国)
zh_TW 对于中文 (台湾)
pt_PT 对于葡萄牙语 (葡萄牙)
pt_BR 对于葡萄牙语 (巴西)

11.  GridView是一个在二维可滚动的网格中展示内容的控件。网格中的内容通过使用adapter自动插入到布局中

android:columnWidth
相关方法setColumnWidth(int)。定义每一列的固定宽度。
必须是dimension值(浮点数后面拼接单位,例如“14.5sp”)。有效的单位有:px,dp,sp,in,mm。
android:gravity
相关方法setGravity(int)。定义每一个单元格的重心。

android:horizontalSpacing
相关方法setHorizontalSpacing(int)。定义了两列之间的水平间隔。
属性设置要求同android:columnWidth
android:numColumns
相关方法setNumColumns(int)。定义了展示的列数。

android:verticalSpacing
相关方法setVerticalSpacing(int)。定义两行之间的垂直间隔。
属性设置要求同android:columnWidth

  移动开发 最新文章
Vue3装载axios和element-ui
android adb cmd
【xcode】Xcode常用快捷键与技巧
Android开发中的线程池使用
Java 和 Android 的 Base64
Android 测试文字编码格式
微信小程序支付
安卓权限记录
知乎之自动养号
【Android Jetpack】DataStore
上一篇文章      下一篇文章      查看所有文章
加:2022-04-07 22:51:12  更:2022-04-07 22:53:18 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 20:56:33-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码