2016-10-20 2 views
0

메인 자바 패키지 안에 많은 클래스가있는 안드로이드 앱을 만들고 있습니다. MainActivity 클래스는 Button onClick Listener를 구현하고 버튼을 클릭 할 때 메소드 내에서 변수 x에 값을 할당하여 코딩을 수행합니다. 이제 클래스 2는 다른 변수에서 동일한 변수 x를 사용합니다. 다른 클래스에서 'x'를 정의하고 setter 메소드를 사용하여 설정 클래스 # 2다른 클래스에서 변수 사용

MainActivityCalss { 

    hi.setOnClickListener(new View.OnClickListener() { 
     public void onClick(View view) { 
      int x = 1; 
     } 
    }); 

} 

Class2 { 

    Method() { 
     y = x + 1; 
    } 

} 
+0

hi.setOnClickListener (새 View.OnClickListener() { 공개 무효 온 클릭 (보기 뷰) {INT (X) = 1;} }); Class2 { } { y = x + 1; } } – Ahmed

+1

다른 클래스에서 setter와 getter를 정의하면 ... –

+0

예를 들어, java와 android에 새로운 것 – Ahmed

답변

0

에 변수 x의 값을 보낼 호출 될 때 나는 온 클릭 방법을 원하고, 당신은 게터를 통해 얻을 어느 곳.

public class value { 
    public static int x; 

    public static void set(int value) { 
     x = value; 
    } 

    public static int get() { 
     return x; 
    } 
} 

그리고 mainactivity의 onclicklistener에서. Class2의 모든 전역 변수를 유지하기 위해 새로운 자바 클래스를 생성

Method() { 
     y = value.get()+1; 
    } 
+0

고마워. 나는 그것을 시도 할 것이다. 그래서 세 번째 클래스를 만들고 그 안에 새 메서드를 구현해야합니다. – Ahmed

+0

예. 시도해 보았 니? – WritingForAnroid

+0

그래, 그것은 Thnx alot – Ahmed

1

에서

hi.setOnClickListener(new View.OnClickListener() { 
    public void onClick(View view) { 
     value.set(1); 
    } 
}); 

은 아주 좋은 생각입니다.

public class GlovalVariable{ 
    public String x; 
    public int y; 
    // Generate getter/setter methods for all the variables defined here. 
} 

이렇게하면 변수를 매우 쉽게 관리 할 수 ​​있습니다. 클래스를 통해 사용되는 변수의 이름을 바꾸려면이 메소드를 사용하면 매우 쉽습니다.

관련 문제