You need to enable JavaScript to run this app. Android Kotlin:AlertDialog输入文本存变量后跨Activity用作SQLite表名的实现问题
优惠活动
大模型
产品
解决方案
定价
更多

Android Kotlin:AlertDialog输入文本存变量后跨Activity用作SQLite表名的实现问题

Android Kotlin开发场景下跨页值传递与动态表名SQLite实现故障

预期需求

  • 在MainActivity2中配置create按钮交互:点击后弹出搭载自定义布局的AlertDialog
  • 将对话框内用户输入的文本存入命名为name的变量
  • 后续以该name值作为SQLite数据库的动态表名,覆盖三类核心能力:SQLiteOpenHelper类执行动态建表逻辑、其他业务Activity读取表名做页面展示、对接数据库完成目标表的读写操作

已完成的代码逻辑

  • MainActivity2 模块
    • 为create按钮绑定点击事件,触发自定义布局AlertDialog弹出
    • 在对话框「Accept」按钮的回调逻辑中,尝试获取对话框内EditText的输入文本,赋值给name变量
  • AdminSQLiteOpenHelper 模块
    • 试图通过直接实例化MainActivity2的方式,读取其内部存储的name值,作为动态表名table_name
    • 在自身的onCreate回调中执行SQLite动态建表语句
    • 封装insertData方法,实现向目标表写入数据的逻辑
  • Main2InsertActivity 模块
    • 试图实例化AdminSQLiteOpenHelper读取table_name值,展示在页面顶部的titulo TextView组件上
    • 提供输入框交互,支撑用户向目标表录入数据

现存异常

  • 无论用户在AlertDialog的输入控件中输入什么内容,MainActivity2内部的name变量始终无更新
  • 跨Activity、跨业务类无法获取到正确的name值,直接导致动态建表、页面标题展示、数据插入三类逻辑全部失效
  • 目前尚未定位问题根因,也未形成对应的修复方案

内容的提问来源于stack exchange,提问作者Weenhallo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.26 03:36:06