【Android、IOS、Flutter、鸿蒙、ReactNative 】文本点击事件

news/2024/11/16 4:29:22/

Android Studio 版本

Android Java TextView 实现 点击事件 参考

import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.TextView;
import android.widget.Toast;public class MainActivity extends AppCompatActivity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);initListener();}private void initListener(){TextView textView=findViewById(R.id.textView);textView.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View view) {Log.i("MainActivity","TextView 被点击了!!!");}});}
}

Android Kotlin TextView 实现 点击事件 参考

import android.os.Bundle
import android.util.Log
import android.widget.TextView
import androidx.appcompat.app.AppCompatActivityclass MainActivity : AppCompatActivity() {override fun onCreate(savedInstanceState: Bundle?) {super.onCreate(savedInstanceState)setContentView(R.layout.activity_main)initListener()}private fun initListener() {val textView = findViewById<TextView>(R.id.textView)textView.setOnClickListener { Log.i("MainActivity", "TextView 被点击了!!!") }}
}

 Android Compose Text 实现 点击事件 参考

导入依赖包

dependencies {......implementation ("androidx.activity:activity-compose:1.3.1")implementation("androidx.compose.material:material:1.4.3")implementation("androidx.compose.ui:ui-tooling:1.4.3")}

启用Compose功能

import android.os.Bundle
import android.util.Log
import androidx.activity.ComponentActivity
import androidx.activity.compose.setContent
import androidx.compose.foundation.background
import androidx.compose.foundation.clickable
import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.height
import androidx.compose.material.Text
import androidx.compose.runtime.Composable
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.text.font.FontStyle
import androidx.compose.ui.text.style.TextAlign
import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.unit.dp
import androidx.compose.ui.unit.spclass MainActivity : ComponentActivity() {override fun onCreate(savedInstanceState: Bundle?) {super.onCreate(savedInstanceState)setContent {showTextView()}}@Preview@Composableprivate fun showTextView() {Box(modifier = Modifier.fillMaxWidth().height(200.dp).background(Color(0xff6200EE)), contentAlignment = Alignment.Center) {Text(text = "Android Compose TextView",fontSize = 20.sp,fontStyle = FontStyle.Normal,modifier = Modifier.clickable {Log.i("MainActivity", "TextView 被点击了!!!!")},textAlign = TextAlign.Center,color = Color(0xffffffff),)}}}

Xcode 版本

IOS Object-c UITextView 点击事件 参考

 IOS SWift UITextView 点击事件

 

 Flutter Text 点击事件 参考

GestureDetector(onTap: () {if (kDebugMode) {print('Flutter Text 点击事件......');}},child: Text('Flutter Text 点击事件',style: TextStyle(fontSize: 18.sp),),
)

点击 pub get 

 

鸿蒙 Text 点击事件 参考

import hilog from '@ohos.hilog'@Entry
@Component
struct Index {@State message: string = 'HarmonyOs Text 点击事件'build() {Column() {Text(this.message).fontSize(20).fontWeight(FontWeight.Bold).width('100%').onClick(() => {hilog.info(0x0000, 'IndexTag', '%{public}s', 'HarmonyOs Text 点击事件!!!')}).height('100%').textAlign(TextAlign.Center)}.height('100%').width('100%')}
}

打开后出现如下情况点击 Migrate Assistant

点击预览 Preview

ReactNative Text 点击事件 参考

import React from 'react';
import {AppRegistry,Text,StyleSheet,Alert} from 'react-native';
import App from './App';
import {name as appName} from './app.json';const textClick = () => {return (<TextonPress={() => {Alert.alert('你点击了按钮!');}}style={styles.text} >点击我</Text>);
};const styles = StyleSheet.create({text: {with:'100%', // 宽度height:100, // 高度textAlign: 'center', // 水平居中backgroundColor: '#ffcc00', // 设置背景颜色textAlignVertical: 'center', // 垂直居中},
});AppRegistry.registerComponent(appName, () => textClick);

 

执行 npm install 安装项目所需要的依赖

运行到安卓

采用 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/1547348.html

相关文章

RFC 2018 即《TCP Selective Acknowledgement Options》

RFC 2018 即《TCP Selective Acknowledgement Options》

entOS中的Firewalld:全面介绍与实战应用

CentOS中的Firewalld&#xff1a;全面介绍与实战应用 一、引言 CentOS操作系统中的防火墙管理工具经历了从iptables到firewalld的演变。这一变迁使得防火墙管理更加灵活和动态&#xff0c;有助于系统管理员更好地理解和使用当前的防火墙管理工具。本文将全面介绍firewalld的基…

Python练习19

Python日常练习 题目&#xff1a; 打印如下九九乘法表 1*11 2*12 2*24 3*13 3*26 3*39 4*14 4*28 4*312 4*416 5*15 5*210 5*315 5*420 5*525 6*16 6*212 6*318 6*424 6*530 6*636 7*17 7*214 7*321 7*428 7*535 7*642 7*749 8*18 8*216 8*324 8*432 8*540 8*648 8*756 8*86…

数据量大Excel卡顿严重?选对报表工具提高10倍效率

当几万行的数据把软件频频跑崩&#xff0c;当珍贵的数据资源无法便捷复用&#xff0c;当数据填报的本地文档在各个电脑中传来传去……在各大岗位要求中频频出现的Excel&#xff0c;作为个人办公软件绝无仅有&#xff0c;但作为企业场景下的报表工具&#xff0c;效率显然不足。 …

Java实战项目-基于Spring Boot+vue框架的健康健身追踪系统

大家好&#xff0c;我是stormjun&#xff0c;今天为大家带来的是Java实战项目-基于Spring Bootvue框架的健康健身追踪系统。该系统采用 Java 语言 开发&#xff0c;MySql 作为数据库&#xff0c;系统功能完善 &#xff0c;实用性强 &#xff0c;可供大学生实战项目参考使用。 博…

Java集合Queue——针对实习面试

目录 Java集合QueueQueue接口的特点是什么&#xff1f;Queue和Deque的区别&#xff1f;ArrayDeque和LinkedList的区别&#xff1f;什么是PriorityQueue&#xff1f;什么是BlockingQueue&#xff1f; Java集合Queue Queue接口的特点是什么&#xff1f; Queue接口在Java中是一个…

51c自动驾驶~合集25

我自己的原文哦~ https://blog.51cto.com/whaosoft/11952510 #AllWeather-Net 拿捏所有天气&#xff01;增强所有恶劣环境图像~ 论文题目&#xff1a;AllWeather-Net: Unified Image Enhancement for Autonomous Driving Under Adverse Weather and Low-Light Conditions 论文…

探秘Spring Boot中的@Conditional注解

文章目录 1. 什么是Conditional注解&#xff1f;2. 为什么需要Conditional注解&#xff1f;3. 如何使用Conditional注解&#xff1f;4. Conditional注解的高级用法5. 注意事项6. 结语推荐阅读文章 在Spring Boot的世界里&#xff0c;配置的灵活性和多样性是至关重要的。有时候&…