Kotlin学习记录2

Android Studio中的注意事项

本文为个人学习记录,仅供参考,如有错误请指出。本文主要记录在Android Studio中开发时遇到的问题和回答。


Fragment有哪些特性?

Fragment 是 Android 开发中的一个重要组件,具有以下特性:

  • 模块化与复用性:

1.Fragment 可以将 UI 和逻辑模块化,便于在不同 Activity 中复用。例如,一个 Fragment 可以在多个 Activity 中使用,减少代码重复。

  • 生命周期管理:

1.Fragment 有自己的生命周期,与 Activity 生命周期紧密关联。
2.主要生命周期方法包括 onCreateView、onStart、onResume、onPause、onStop、onDestroyView 等。

  • 动态添加与替换:

1.可以在运行时动态添加、替换或移除 Fragment。
2.使用 FragmentManager 和 FragmentTransaction 来管理 Fragment 的操作。

  • 支持回退栈:

1.Fragment 事务可以添加到回退栈中,用户可以通过返回键回溯 Fragment 状态。
2.使用 addToBackStack 方法将事务加入回退栈。

  • 与 Activity 通信:

1.Fragment 可以通过 getActivity() 获取所属的 Activity。
2.Activity 可以通过 FragmentManager 获取 Fragment 实例,进行通信。

  • UI 灵活性:

1.Fragment 可以在不同屏幕尺寸和方向上灵活调整布局。例如,在平板设备上可以同时显示多个 Fragment,而在手机上可能只显示一个。

  • 数据传递:

1.可以通过 setArguments 和 getArguments 方法在 Fragment 之间传递数据。
2.也可以通过接口回调的方式实现 Fragment 与 Activity 之间的数据交互。

  • 嵌套 Fragment:

1.支持在 Fragment 中嵌套其他 Fragment,进一步增加 UI 的复杂性和灵活性。

  • 总结:

Fragment 提供了一种灵活的方式来构建和管理 UI 组件,适用于复杂的应用界面设计,特别是在需要适应不同屏幕尺寸和设备类型时。


TextView有哪些特性?
  1. 文本内容相关属性
    android:text 设置 TextView 显示的文本内容。 例如:android:text=“Hello World”。
    android:textSize 设置文本的字体大小,单位为 sp(缩放像素)。 例如:android:textSize=“16sp”。
    android:textColor 设置文本的颜色,可以是颜色值或资源引用。 例如:android:textColor=“#FF0000” 或 android:textColor=“@color/red”。
    android:textStyle 设置文本的样式,如粗体 (bold)、斜体 (italic) 或正常 (normal)。 例如:android:textStyle=“bold|italic”。
    android:fontFamily 设置文本的字体。 例如:android:fontFamily=“sans-serif”。
    android:textAllCaps 设置是否将所有文本转换为大写。 例如:android:textAllCaps=“true”。

  2. 布局相关属性
    android:layout_width 和 android:layout_height 设置 TextView 的宽度和高度。 常用值:match_parent、wrap_content 或具体尺寸(如 100dp)。
    android:gravity 设置文本在 TextView 内部的对齐方式。 例如:android:gravity=“center” 使文本水平和垂直居中。
    android:layout_gravity 设置 TextView 在其父容器中的对齐方式。 例如:android:layout_gravity=“center” 使 TextView 在父容器中居中。

  3. 背景与边框
    android:background 设置 TextView 的背景颜色或背景图片。 例如:android:background=“#CCCCCC” 或 android:background=“@drawable/bg_image”。
    android:drawableStart、android:drawableEnd、android:drawableTop、android:drawableBottom


访问权限:

在类中定义成员属性时,不同可见性的访问权限如下:

  • private:意味着该成员仅在此类中可见(包括其所有成员)。
  • protected:与private的可见性类似,外部无法使用,但在子类中可以使用。
  • internal:意味着本项目中任何地方都会看到其internal成员,但是别人引用我们项目时不行。
  • Public:意味着任何地方都可以访问。

生命周期:

视图的生命周期:与Activity的生命周期类似:

onCreate -> onCreateView(创建视图) -> onViewCreated(视图初始化) -> onStart -> onResume

Activity的生命周期:

在这里插入图片描述
在这里插入图片描述


wrap_content和match_parent有什么区别?
属性wrap_contentmatch_parent
行为视图大小根据内容自适应视图大小填充父容器的可用空间
适用场景内容大小不确定,希望视图自适应内容时希望视图占满父容器的全部空间时
示例TextView根据文本长度调整宽度Button占满屏幕宽度
父容器影响不受父容器大小影响,仅根据内容调整完全依赖父容器的大小
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值