2016-04-08 183 views
0

我正在customlistadapter中创建image_details。在此适配器期间,变量Answer被设置为每个项目。通过调试我看到,我在哪里,我需要它的地方的数据,但我不知道如何访问它:如何从对象获取变量?

调试图像:Debugger

在这里你可以看到我有6个问题其中每个都有变量int Answer(打开一个设置为0)。我想要求每个项目的应答(全部6)当我按下保存:

SaveButton = ((Button) rootView.findViewById(R.id.Save)); 
SaveButton.setOnClickListener(new View.OnClickListener() { 
    @Override 
    public void onClick(View v) { 
     Object c = image_details.get(1); 
    } 
}); 

我应该把什么在onClick检索这些数据?

这是我QuestionItem类:

public class QuestionItem { 
    private String Question; 
    private String Answer1; 
    private String Answer2; 
    private String Answer3; 
    private String Answer4; 
    private int Answer; 
    private String[] Answers; 

    public String getQuestion() { 
     return Question; 
    } 

    public void setQuestion(String Question) { 
     this.Question = Question; 
    } 

    public String Getanswer1() { 
     return Answer1; 
    } 

    public void setAnswer1(String Answer1) { 
     this.Answer1 = Answer1; 
    } 

    public String Getanswer2() { 
     return Answer2; 
    } 

    public void setAnswer2(String Answer2) { 
     this.Answer2 = Answer2; 
    } 

    public String Getanswer3() { 
     return Answer3; 
    } 

    public void setAnswer3(String Answer3) { 
     this.Answer3 = Answer3; 
    } 

    public String Getanswer4() { 
     return Answer4; 
    } 

    public void setAnswer4(String Answer4) { 
     this.Answer4 = Answer4; 
    } 

    public int GetAnswer() { 
     return Answer; 
    } 

    public void setAnswer(int Answer) { 
     this.Answer = Answer; 
    } 
} 
+0

您似乎在'onClick'方法中有数据,我建议您在该方法中使用它。 –

+0

如何:如果我使用image_details.get(0)得到第一个问题,我得到的问题1的对象,但我无法弄清楚如何从该对象获取数据 – Igo

+0

你应该只访问你期望做的事情有用。我不清楚你在做什么,所以我不能建议你应该怎么做。你正在访问一个'List'并且假设至少有2个值。不确定你打算忽略'get(0)' –

回答

1

使用实例变量。下面是一个例子

public class Employee{ 
    // this instance variable is visible for any child class. 
    public String name; 

// salary variable is visible in Employee class only. 
private double salary; 

// The name variable is assigned in the constructor. 
public Employee (String empName){ 
    name = empName; 
} 

// The salary variable is assigned a value. 
public void setSalary(double empSal){ 
    salary = empSal; 
} 

// This method prints the employee details. 
public void printEmp(){ 
    System.out.println("name : " + name); 
    System.out.println("salary :" + salary); 
} 

public static void main(String args[]){ 
    Employee empOne = new Employee("Ransika"); 
    empOne.setSalary(1000); 
    empOne.printEmp(); 
} 
}