에 두 기능 안녕하세요이 코드를 가지고 :자바 코드 optimalization - 하나
this.firstBtn.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
final CharSequence[] items = {"1", "2", "3"};
AlertDialog.Builder builder = new AlertDialog.Builder(SlovnikoidActivity.this);
builder.setTitle("test");
builder.setItems(items, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int item) {
Toast.makeText(getApplicationContext(), items[item], Toast.LENGTH_SHORT).show();
langFrom.setText(items[item]);
}
});
AlertDialog alert = builder.create();
alert.show();
}
});
this.secondBtn.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
final CharSequence[] items = {"1", "2", "3"};
AlertDialog.Builder builder = new AlertDialog.Builder(SlovnikoidActivity.this);
builder.setTitle("test");
builder.setItems(items, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int item) {
Toast.makeText(getApplicationContext(), items[item], Toast.LENGTH_SHORT).show();
langFrom.setText(items[item]);
}
});
AlertDialog alert = builder.create();
alert.show();
}
});
단지 두 개의 서로 다른 부분이 있습니다 : this.firstBtn
및 this.secondBtn
은 병합하는 방법을 방법이 있나요? 예를 들어 firstBtn
을 클릭하면 foo(firstBtn)
이라는 함수를 호출하고 secondBtn
을 호출하면 foo(secondBtn)
이 호출되고 나머지는 동일하게 작동합니까? 저는 자바와 안드로이드 개발을 처음 접했기 때문에 구문에 대해 잘 모르겠습니다.
감사합니다.
좋아 보인다. 나는 'extends SlovnikoidActivity'를 추가하여 하나의 오류를 수정했지만 네 번째 줄에는'슬로 보 유형의 엔 클로징 인스턴스가 범위에서 접근 가능하지 않습니다 '라는 메시지가 하나 더 있습니다. 나는 그게 무슨 뜻인지 모르겠다 고해서 그것을 고치는 법을 모른다. Thanks – simPod
이 클래스 정의를 Activity 클래스의 하위 클래스로 만든다. (나는 이것을'SlovnikoidActivity'라고 부른다.) 그렇게하면 예외를 없앨 수 있습니다. –
하위 클래스를 만드는 것은'extends SlovnikoidActivity'에 의해 만들어집니다. 맞습니까? 그것은 몇 가지 오류를 제거하는 데 도움이되지만 여전히'슬로 브 타입의 엔 클로징 인스턴스는 범위에서 접근 가능하지 않습니다. ' – simPod