【问题标题】:Android Eclipse: Change the text in the app to a string created withing the programAndroid Eclipse:将应用程序中的文本更改为程序中创建的字符串
【发布时间】:2011-12-28 21:12:39
【问题描述】:

http://www.devx.com/wireless/Article/39101/0/page/2

我已按照本教程进行操作,并使其正常工作。现在,在掌握了基础知识之后,我正在研究自己的东西。我不明白如何更改文本(在用户输入其姓名的部分上方)所以我用 .java 文件定义的字符串。我希望能够改变它,让它像一个问题,这个人会输入答案并点击按钮,然后它会说它是否正确。然后我会将一个新字符串加载到应用程序中并继续该过程。关于如何获取文本的任何想法,我可以通过将其设置为等于新字符串或类似的东西来更改?

编辑: 我现在的代码非常草率,我有一些随机代码以及 phsuedo 代码和所有爵士乐注释掉,如果你不是我的 atm,它是不可读的。

我想我的问题是,如何获取我在 .java 文件中创建的字符串以显示在应用程序 UI 上?例子: String str = "你好!"; 将 str 输出到 UI

【问题讨论】:

  • 看来您需要注册才能阅读该文章。如果您可以粘贴您正在编写的代码,这将有助于回答您的问题。

标签: android eclipse string text


【解决方案1】:

如何获取我在 .java 文件中创建的字符串以显示在 应用界面?

我假设您想在TextView 中显示它。如果是这样,您可以执行以下操作:

String str = "Hello there!";
private TextView text = (TextView) findViewById(R.id.textViewId);
text.setText(str);

【讨论】:

  • 是的,就是这样。那 setText 是我一直在寻找的,我不明白为什么我在谷歌搜索中找不到它。谢谢。
【解决方案2】:

如何获取我在 .java 文件中创建的字符串以显示在应用程序 UI 上?

在 Android 中,任何向用户展示某物的东西都称为视图。有很多不同的类型,适合可视化不同类型的数据。对于基本文本,您需要TextView。所以简化一些事情,让我们假设您拥有链接中显示的 XML 代码:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >
    <TextView  
        android:layout_width="fill_parent" 
        android:layout_height="wrap_content" 
        android:text="@string/hello"
    />
</LinearLayout>

有许多资源可以解释如何构建/使用布局、它们的优缺点,所以我跳过了这一部分。需要意识到的重要一点是在上述布局中定义了一个TextView。为了引用它,它需要有一个唯一的 id。让我们添加一个:

<TextView  
    android:id="@+id/question_textview" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:text="@string/hello"
/>

然后您可以从 Java 代码中引用此 TextView,如下所示:

TextView questionTextView = (TextView) findViewById(R.id.question_textview);

请注意,R.id.question_textview 基本上就是我们之前在布局中命名的 TextView。从这里开始,您就有了一个 Java 对象,您可以用它做各种事情,包括获取和设置它所显示的文本。

String textDisplayed = questionTextView.getText(); // This will get the text currently displaying.
questionTextView.setText("Please display me"); // This will set the displayed text to "Please display me".

我真的建议您阅读更多教程和 api 演示,因为这是非常基础的东西。

【讨论】:

  • 我知道这是基本的东西。但是,我确实喜欢自己玩东西并弄清楚我能做什么。我昨晚才开始这样做(我主要只是做了基本的c ++,以前从未做过java)。我对寒假感到无聊,所以我想我会找点事情来打发时间。 顺便说一句,这也很有帮助,谢谢
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多