首页 > 解决方案 > 刷新时在 textview 上显示文本的字符串数组

问题描述

而不是Text,必须R.id.text从TextView = My Text读取文本,我尝试了很多但失败了,如何,请帮助。

这是行:

public class MyWidgetProvider extends AppWidgetProvider {
// String array to show text at textview on refresh
private static final String[] refreshStrings = {"Text"};

<TextView
    android:id="@+id/text"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:padding="10dp"
    android:text="My Text"
    android:textColor="@android:color/white"
    android:textSize="18sp" />

我希望它是这样的:

private static final String[] refreshStrings = R.id.text;

标签: androidarraysstringtextview

解决方案


我发现这个如何在 appwidgetprovider 中找到视图 ID?,所以不能直接引用修改。一种解决方案可能是使用. 在这里你可以看到如何更新和修改http://android4beginners.com/2013/06/lesson-1-3-how-to-modify-textview-in-java-code-findviewbyid-settext-and-gettext-方法/Appwidget AppCompatActivityAppCompatActivity

这是我的代码,其中包含AppCompatActivity如何从TextViewR.id.<idname>

主要活动:

package com.example.myapplication;

import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.TextView;

    public class MainActivity extends AppCompatActivity {

        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            TextView tv = (TextView) findViewById(R.id.text);
        }
    }

activity_main.xml(不要忘记更改标准布局,我选择了LinearLayout):

<TextView
    android:id="@+id/text"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:padding="10dp"
    android:text="My Text"
    android:textColor="@android:color/white"
    android:textSize="18sp" />

推荐阅读