在AlertDialog中显示int变量并显示为消息

时间:2015-02-27 13:34:32

标签: java android integer android-alertdialog

我需要在AlertDialog中显示以下消息并显示它。使用此代码我已经以这种方式完成了它:

AlertDialog dialog;
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setMessage(R.string.pic_time +
        " qntpic" +//This is one variable i must call from a .java called PreviewCamera
        R.string.pic +
        "time" +//This is one variable i must call from a .java called PreviewCamera
        R.string.time);
builder.setPositiveButton(android.R.string.ok, null );
dialog = builder.create();
dialog.show()

但我不知道如何继续调用这些变量,我尝试了一些方法,但没有结果。

这个变量是int,在PreviewCamera上是私有的。

3 个答案:

答案 0 :(得分:1)

使用你们给我的信息,这就出现了。 如果有人找到与我相同的问题,这就是解决方案

    AlertDialog dialog; AlertDialog.Builder builder = new AlertDialog.Builder(this); 
    builder.setMessage(getResources().getString(R.string.pic_time) + 
Integer.parseInt(bdl.getqntpic()) +
    getResources().getString(R.string.pic)+
    Integer.parseInt(bdl.getTime()) +
    getResources().getString(R.string.time)); 

    builder.setPositiveButton(android.R.string.ok, null ); dialog = builder.create(); dialog.show(); }

是吗?它有点工作。

谢谢!

答案 1 :(得分:0)

R.string.pic_time返回资源的id。 如果您想要资源的值,则必须使用getResources().getString(R.string.pic_time)作为字符串,或getResources().getInteger(R.integer.time)作为整数。

可以使用:String.valueOf(yourInt

将整数转换为String

答案 2 :(得分:0)

你混淆.xml变量和.java变量。

使用getResources()。getString(R.string.pic_time)或getResources()。getInt(R.int.pic_time)获取

.XML 变量。它们在文件夹“res / values”下的.xml文件(仅用小写字母和下划线命名)中定义。它们是在编译时设置的,不能(/不应该?)在运行时更改(afaik)。

.java 变量是由java代码在类中设置的变量。他们得到参考。当您调用System.out.println(pic_time);时,由于其在内存中的引用,您将获得变量“pic_time”的值。

示例:类MainActivity将从类A_Class获取变量“pic_time”: 的 MainActivity.java

public class Accueil extends Activity
{
    @Override
    protected void onCreate(Bundle savedInstanceState)
    {
        A_Class mySecondClass = new A_Class();

        int myInt = mySecondClass.getPicTime();

        System.out.println(myInt);
    }
}

<强> A_Class.java

public class A_Class
{
    private int pic_time;

    public A_Class()
    {
        pic_time = 50;
    }

    public int getPicTime()
    {
        return pic_time;
    }
}