【Android、IOS、Flutter、鸿蒙、ReactNative 】文本Text显示

news/2024/11/18 17:42:08/

XML布局 参考

android:text

<TextViewandroid:id="@+id/textview"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="Android Java TextView"app:layout_constraintBottom_toBottomOf="parent"app:layout_constraintLeft_toLeftOf="parent"app:layout_constraintRight_toRightOf="parent"app:layout_constraintTop_toTopOf="parent" />

 android:textSize

<TextViewandroid:id="@+id/textview"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="Android Java TextView"android:textSize="28sp"app:layout_constraintBottom_toBottomOf="parent"app:layout_constraintLeft_toLeftOf="parent"app:layout_constraintRight_toRightOf="parent"app:layout_constraintTop_toTopOf="parent" />

 android:textStyle

<TextViewandroid:id="@+id/textview"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="Android Java TextView"android:textStyle="bold"android:textSize="28sp"app:layout_constraintBottom_toBottomOf="parent"app:layout_constraintLeft_toLeftOf="parent"app:layout_constraintRight_toRightOf="parent"app:layout_constraintTop_toTopOf="parent" />

 文本显示一行

<TextViewandroid:id="@+id/textview"android:layout_width="200dp"android:layout_height="wrap_content"android:text="Android Java TextView Android Java TextView Android Java TextView"android:textStyle="bold"android:textSize="28sp"android:maxLines="1"android:ellipsize="end"app:layout_constraintBottom_toBottomOf="parent"app:layout_constraintLeft_toLeftOf="parent"app:layout_constraintRight_toRightOf="parent"app:layout_constraintTop_toTopOf="parent" />

Compose 布局 参考

build.gradle下面配置

 

 导入依赖包:

import androidx.compose.runtime.Composable
import androidx.compose.ui.tooling.preview.Preview
class MainComposeActivity : ComponentActivity() {override fun onCreate(savedInstanceState: Bundle?) {super.onCreate(savedInstanceState)setContent { showTextView() }}
}@Preview
@Composable
private fun showTextView() {Text(text = "Android Compose TextView",fontSize = 28.sp,fontStyle = FontStyle.Italic)
}

解决无法预览Preview

通过 Android Studio 工具执行 Invalidate Caches

 文本显示一行

Text(text = "Android Compose TextView Android Compose TextView Android Compose TextView ",fontSize = 28.sp,fontStyle = FontStyle.Italic,maxLines = 1,overflow = TextOverflow.Ellipsis
)

Flutter 布局 参考

Text('Flutter Dart TextView',style: TextStyle(fontSize: 12.sp, fontWeight: FontWeight.bold),
),

 显示一行文本

Text('Flutter Dart TextView Flutter Dart TextView Flutter Dart TextView ',maxLines: 1,overflow: TextOverflow.ellipsis,style: TextStyle(fontSize: 28.sp,fontWeight: FontWeight.bold,),
)

HarmonyOS布局 参考

DevEco Studio版本

显示文本

Text(this.message).fontSize(50).fontWeight(FontWeight.Bold)

 预览Previewer 问题

显示一行文本 

Text(this.message).fontSize(50).fontWeight(FontWeight.Bold).maxLines(1).textOverflow({overflow:TextOverflow.Ellipsis})

IOS Object-c 布局 参考

显示一行文本

#import "ViewController.h"@interface ViewController ()@end@implementation ViewController- (void)viewDidLoad {[super viewDidLoad];// Do any additional setup after loading the view.UITextView* textView = [[UITextView alloc]initWithFrame:CGRectMake(0, 100, 320, 300)];NSMutableAttributedString *attributedString = [[NSMutableAttributedString alloc]initWithString:@"IOS Object-c TextView IOS Object-c TextView IOS Object-c TextView IOS Object-c TextView"];[attributedString addAttribute:NSFontAttributeName value:[UIFont boldSystemFontOfSize:28.0] range:NSMakeRange(0, attributedString.length)];textView.textContainer.maximumNumberOfLines = 1;textView.textContainer.lineBreakMode =  NSLineBreakByTruncatingTail;textView.attributedText = attributedString;[self.view addSubview:textView];
}@end

 

IOS Swift 布局 参考

显示一行文本

import UIKitclass ViewController: UIViewController {override func viewDidLoad() {super.viewDidLoad()// Do any additional setup after loading the view.let attributedString = NSMutableAttributedString(string: "Ios Swift TextView Ios Swift TextView Ios Swift TextView Ios Swift TextView")attributedString.addAttribute(NSAttributedString.Key.font, value: UIFont.boldSystemFont(ofSize: 28.0), range: NSRange(location: 0, length: attributedString.length))let textView = UITextView(frame: CGRect(x: 0, y: 100, width: 320, height: 300))textView.attributedText = attributedStringtextView.textContainer.maximumNumberOfLines = 1;textView.textContainer.lineBreakMode =  .byTruncatingTailself.view.addSubview(textView)}}

 

React Native 布局 参考 

显示一行文本

import React from 'react';
import {AppRegistry, StyleSheet, Text, View} from 'react-native';
import {name as appName} from './app.json';const ReactNativeTextView = () => {return (<View style={styles.container}><Text numberOfLines={1} ellipsizeMode="tail" style={styles.hello}>React Native TextView React Native TextView</Text></View>);
};
const styles = StyleSheet.create({container: {flex: 1,justifyContent: 'center',},hello: {fontSize: 28.0,textAlign: 'center',margin: 10,},
});AppRegistry.registerComponent(appName,() => ReactNativeTextView,
);

 

搭建开发者环境

设置淘宝npm镜像

npm config set registry https://registry.npmmirror.com/

检查当前使用的镜像

npm config get registry

Cannot find module 'react-scripts/package.json'

执行如下命令:npm install --save react-scripts

执行 export 配置环境

export JAVA_HOME= Java环境变量安装路径

例如 :

修改gradle镜像路径 

修改成 阿里云镜像

运行到安卓平台

采用 npx react-native run-android npm start 运行

 

运行到IOS平台

采用 npx react-native run-ios npm start 运行

 切换到iOS目录从新安装依赖 

// 清除缓存
pod cache clean  --all//移出本地 pod文件依赖
pod  deintegrate//执行安装显示下载信息
pod install --verbose --no-repo-update

 

案例

所属分支


http://www.ppmy.cn/news/1548045.html

相关文章

HTTP常见的状态码有哪些,都代表什么意思

HTTP 协议定义了一系列的状态码&#xff0c;用于描述服务器对客户端请求的处理结果。这些状态码分为五个类别&#xff0c;每个类别都有特定的用途。 常见状态码 1开头 信息性状态码 这些状态码表示请求已被接收&#xff0c;继续处理。 100 Continue&#xff1a;客户端应继续…

时间序列分析——移动平均法、指数平滑法、逐步回归法、趋势外推法等(基于Python实现)

第 11章——时间序列分析和预测 【例11-1】 绘制时间序列折线图—观察成分 【代码框11-1】——绘制时间序列折线图 # 图11-2的绘制代码 import pandas as pd import matplotlib.pyplot as plt plt.rcParams[font.sans-serif]=[SimHei

Uni-APP+Vue3+鸿蒙 开发菜鸟流程

参考文档 文档中心 运行和发行 | uni-app官网 AppGallery Connect DCloud开发者中心 环境要求 Vue3jdk 17 Java Downloads | Oracle 中国 【鸿蒙开发工具内置jdk17&#xff0c;本地不使用17会报jdk版本不一致问题】 开发工具 HBuilderDevEco Studio【目前只下载这一个就…

数字图像处理(c++ opencv):图像分割-基本边缘检测

Kirsch边缘检测 Kirsch边缘检测利用8个方向的核对图像进行检测&#xff0c;使每个像素点的结果为八个方向中响应最大的值。 Kirsch核&#xff1a; #include<iostream> #include<opencv2/opencv.hpp> #include<algorithm>using namespace cv; using names…

C/C++基础知识复习(23)

) 什么是 C 内联函数&#xff1f;它的作用是什么&#xff1f; C 内联函数&#xff08;inline function&#xff09; 是一种通过编译器优化的特殊函数。内联函数的主要作用是减少函数调用的开销&#xff0c;使得程序执行更加高效&#xff0c;尤其是对于那些频繁调用的函数。 当…

maven 中存在jar包,但是pom无法依赖

这篇文章&#xff0c;记录了部分问题 ​​​​​​​快速全方位解决&#xff1a;maven仓库里有jar包但是pom文件中依赖不到 报错~_maven仓库中有jar包但是引用不到-CSDN博客 主要还是jar包的pom文件命名问题&#xff0c;xx.pom.lastUpdate 其中多了lastUpdate&#xff0c;去掉…

计算机网络 第二章:物理层

一、 基本概念 1.1 物理层作用、要解决的问题 第一章提到过&#xff0c;物理层要解决的问题是&#xff1a;用什么信号传输比特0和1&#xff1f; 现在的计算机网络有很多传输媒体&#xff0c;物理层的作用就是尽可能的屏蔽掉这些传输媒体的差异&#xff0c;这样就能更好地为数…

hbase未来的发展趋势

HBase 作为一个开源的分布式、可伸缩的 NoSQL 数据库,依托于 Hadoop 生态系统,以处理海量结构化数据为优势。随着大数据技术的发展,HBase 的发展趋势主要体现在以下几个方面: 1. 与云计算深度集成 随着企业向云迁移,HBase 也正在越来越多地部署在云环境中。云服务商(如 …