👻 第一章:认识Android世界的“社牛”和“社恐”
在Android应用的社交圈里,如果说ImageView是朋友圈晒图达人,Button是派对气氛组,那么TextView就是那个侃侃而谈的“社牛”——永远在输出信息,从不停歇。而EditText则是内心戏十足的“社恐”——表面安静如鸡,实则随时准备接收用户的悄悄话。
还记得你第一次打开某个APP时,那个热情洋溢的“欢迎来到XXX!”吗?那是TextView在打招呼。而当你要输入账号密码时,那个小心翼翼等你打字的空白框,就是EditText在默默递话筒。
说来有趣,这对CP其实是血缘至亲——EditText全盘继承了TextView的能力,却发展出截然不同的性格。就像哥哥继承家产当霸道总裁(专注展示),弟弟偏要搞艺术创作(专注输入)。今天,就让我们扒开这对兄弟的底裤,看看它们到底多有意思!
🎨 第二章:TextView——不只是“文字打印器”
2.1 基础人设:佛系展示官
TextView堪称组件界的劳模,从显示“Hello World”到展示万字小说,从单行标题到多行详情,无处不在。但你以为它只是个无情的文字机器?大错特错!
它的核心技能:
- 📢 单向输出:只显示,不接收输入(用户想修改?没门!)
- 🎭 表情包大师:支持Emoji、颜文字、( ͡° ͜ʖ ͡°) 等各种骚操作
- 🎨 美颜十级:字体、颜色、大小随心变,CSS看了都直呼内行
2.2 十八般武艺属性详解
别看TextView长得老实,打扮起来也是花枝招展。来感受下它的“美妆包”:
<TextView
android:id="@+id/tv_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="我是标题我怕谁!"
android:textColor="#FF6B6B"
android:textSize="24sp"
android:textStyle="bold"
android:background="@drawable/bg_rounded"
android:padding="16dp"
android:gravity="center"
android:shadowColor="#66000000"
android:shadowDx="2"
android:shadowDy="2"
android:shadowRadius="4"
android:lineSpacingExtra="8dp"/>
重点属性吐槽:
android:gravity:控制文字在框内的位置,相当于给文字找座位(左中右随便坐)android:textStyle:文字要不要加粗、斜体,或者又粗又斜(戏真多)android:shadow系列:给文字加阴影,瞬间从2D变3D,立体感拉满
2.3 编程花式玩法
光会在XML里静态装逼怎么行?真正的强者都在代码里动态换装:
val tvStatus = findViewById<TextView>(R.id.tv_status)
// 秒变红色警告文字
tvStatus.apply {
text = "账号密码错误!"
setTextColor(Color.RED)
setBackgroundColor(Color.parseColor("#FFF0F0"))
// 加点动画效果,让提示更吸睛
animate().scaleX(1.1f).scaleY(1.1f).setDuration(300).start()
}
// 玩点高级的——部分文字变色
val spannable = SpannableString("第二杯半价!立即购买")
spannable.setSpan(
ForegroundColorSpan(Color.RED),
3, 5,
Spannable.SPAN_EXCLUSIVE_EXCLUSIVE
)
tvStatus.text = spannable
⌨️ 第三章:EditText——用户的“情绪收纳箱”
3.1 双重人格:安静时像天使,输入时像战场
如果说TextView是输出型人格,那EditText就是典型的输入型人格。它表面上是个乖巧的空白框,实际上内心OS:“用户爸爸快给我输入!我要数据!我要内容!”
它的核心定位:
- 🎤 话题引导者:通过hint属性温

最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



