相关疑难解决方法(0)

以XML定义的布尔值.如何在Java中引用?

我正在尝试编写一些引用bool.xml文件的代码,并引用bool中的当前值.

<bool name="enableQAurl">true</bool>
Run Code Online (Sandbox Code Playgroud)

有了这个我希望能够在代码中引用它,所以如果它设置为True它会做一些事情,如果是false则做其他事情.只是一个简单的If和else语句.

任何代码参考或反馈都非常感谢.

java android boolean

28
推荐指数
2
解决办法
2万
查看次数

当我需要一个String时,R.string.XXX从strings.xml返回一个int

这是这个线程的延续:

在strings.xml中本地化字符串会产生NullPointerException

在经历并实现该线程中提供的解决方案之后出现此问题.提供的解决方案适用于以下情况:

loading = (TextView)findViewById(R.id.loading);
loading.setText(R.string.loading);
Run Code Online (Sandbox Code Playgroud)

这不适用于以下情况:

exodus.add(new Question(R.string.a, R.string.b, R.string.c, R.string.d, 0, R.string.e, -1, R.string.f));
Run Code Online (Sandbox Code Playgroud)

错误是The constructor Question(int, int, int, int, int, int, int, int) is undefined.问题的构造函数应该是Question(String, String, String, String, int, String, int, String)这些:

R.string.X
Run Code Online (Sandbox Code Playgroud)

以int而不是字符串返回.

我该怎么做才能解决这个问题?而且,如果你知道,为什么这个方法用于设置TextViews的文本而不是对象中的参数?

java android undefined

7
推荐指数
3
解决办法
1万
查看次数

如何在Android的ViewModel类DataBinding中获取R.string

我目前正在使用databinding我的Android应用程序项目.我想error在我的CustomTextViewfrom 上设置消息,R.string.txtOldPassWordError并从另一个叫做的类中设置它ViewModelClass.

这是我的XML代码

<com.horseproject.widget.CustomEditText
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_gravity="center_vertical"
    android:layout_marginTop="@dimen/dp_20"
    android:drawablePadding="@dimen/dp_10"
    android:hint="@string/enter_old_password"
    android:inputType="textPassword"
    android:lines="1"
    android:text="@={ChangePasswordVM.userOldPassword}"
    android:textColorHint="@color/gray_text"
    app:drawableLeftCompat="@drawable/ic_password_lock"
    app:drawableTintCompat="@color/gray_app"
    app:error="@{ChangePasswordVM.userOldPasswordError}" />
Run Code Online (Sandbox Code Playgroud)

这是ViewModelClass.java

public class ChangePasswordViewModel extends BaseObservable {

    public ObservableField<String> userOldPassword = new ObservableField<>("");

    public void userPasswordChange() {

        if ((TextUtils.isEmpty(userOldPassword.get()))) {
            userOldPasswordError.set("Please enter your old password");
            return;
        } else if (userOldPassword.get().length() <= 5) {
            userOldPasswordError.set("Password should contain minimum 6 characters");
            return;
        } else {
            userOldPasswordError.set(null);
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

这是来自的字符串 strings.xml

<string name="select">Please Enter …
Run Code Online (Sandbox Code Playgroud)

data-binding android textview

7
推荐指数
2
解决办法
8406
查看次数

如何在AlertDialog中访问文本中的字符串资源

可能重复作为底部链接。对于我要提出的特定问题或想获得更快的答案,请参阅问题中的答案。否则,请转到以下链接。

Android:如何使用资源名称从资源中获取字符串?

================================================== =========================我的问题:

我问这个问题,即使可能有重复项,但对我没有用。

我正在尝试访问

strings.xml

在AlertDialog中,但我似乎做不到。我说过

.setTitle(@ string / AlertTitle)

在下面的代码中,但没有成功,并给出了一个错误。有没有可能从AlertDialog获取字符串的方法,还是不可能?

下面的代码。

这是AlertMainActivity.java

AlertDialog dialog = new AlertDialog.Builder(this)
                        .setTitle("Add a New Task") //AlertTitle
                        .setMessage("What do you want to do next?") //AlertMessage
                        .setView(taskEditText) 
                        .setPositiveButton("Add", new DialogInterface.OnClickListener() //Add {
                           ...
                        .setNegativeButton("Cancel", null) //Cancel  
                           ...
                        }
Run Code Online (Sandbox Code Playgroud)

和strings.xml

<string name="AlertTitle">Add a New Task</string>
<string name="AlertMessage">What do you want to do next?</string>
<string name="Add">Add</string>
<string name="Cancel">Cancel</string>   
Run Code Online (Sandbox Code Playgroud)

谢谢!

java android

3
推荐指数
1
解决办法
1920
查看次数

可以将R.id的String版本转换为int吗?

作为练习,我正在建立一个日历。以下是我的代码的一小部分。我有一个class MyCalendarextends Activity. 该活动将被链接到其布局包括七个XML文件TextViews的id小号R.id.day0R.id.day6

如果从转换Stringint,则Activity的findViewById()方法是否可以识别int这些ids 的版本?

        String Days [] = {"Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"};
        TextView dayViews [];

        private void populateViews (){

            for (int counter = 0; counter < Days.length; counter++){
                int ID = Integer.parseInt("R.id.day"+counter);
                dayViews [counter] = (TextView) findViewById(ID);
                dayViews[counter].setText(Days[counter]);
            }
Run Code Online (Sandbox Code Playgroud)

string int android android-resources

2
推荐指数
1
解决办法
6864
查看次数

如何在android中调用带有字符串名称的资源?

我现在尝试调用资源(在我的应用程序中它们是 mp3 文件和图像)。对于 mp3 文件部分,我的代码是这样的(显然不起作用!)

if(i==1)
{
hoho= MediaPlayer.create(getApplicationContext(), R.raw.univ_day1);
hoho.start();
}
else if (i==2)
{
hoho= MediaPlayer.create(getApplicationContext(), R.raw.univ_day2);
hoho.start();  
}
Run Code Online (Sandbox Code Playgroud)

...

在我的应用程序中,应用程序内有数百个 mp3 文件。所以我想做的就是将代码简要总结为这样的内容。

hoho=MediaPlayer.crate(getApplicationContet(), R.raw.univ_day+"i"); //This also looks really awkward.
Run Code Online (Sandbox Code Playgroud)

如果我知道如何像上面那样写下代码就好了。如何处理原始文件的名称和“R.raw ....”之类的形式?如果我能做到,那么我也可以对图像资源应用类似的方法。

resources mp3 android

2
推荐指数
1
解决办法
1142
查看次数

如何将多余的数据从strings.xml

我的strings.xml中有很多字符串,我想将Extra放到另一个意图中,即从strings.xml中获取我检索到的数据,但是当应用程序运行时,它无法获得我想要的结果

发件人活动

Intent moveIntent = new Intent(MainActivity.this, informationActivity.class);
moveIntent.putExtra(informationActivity.data1, "@string/THISISMYSTRINGFROMSTRINGSXML");
startActivity(moveIntent);
Run Code Online (Sandbox Code Playgroud)

收件人意图

String data1= getIntent().getStringExtra(data1);
text1.setText(data1);
Run Code Online (Sandbox Code Playgroud)

我得到的结果是

@string/THISISMYSTRINGFROMSTRINGSXML
Run Code Online (Sandbox Code Playgroud)

我认为通过提供上述数据将使出现的文本取自strings.xml文件,显然不是,有没有办法解决它?

android android-studio

0
推荐指数
1
解决办法
61
查看次数