나는 안드로이드에서 작업 중입니다.문자열이있는 findViewById를 사용합니다.
내 응용 프로그램에는 TextViews를 추가 할 수있는 옵션이 있습니다.
내가의 ID로 최대 5 TextViews 수 있습니다 - 등 번호 1, 번호 2, 번호 3을 ..
나는 main_activity.xml와 자원 파일와 나머지 직접 최초의 ID를 설정하고
나는 현재 textviews 수를 가지고 있습니다.
나는 현재 수의 textviews 만 사용하여 textview에 액세스하는 좋은 방법을 찾고 있습니다.
대신이
switch (TextViewNumber) {
case 2:
findViewById(R.id.Number2);
break;
case 3:
findViewById(R.id.Number3);
break;
case 4:
findViewById(R.id.Number4);
break;
}
을하는 I는 무엇을 의미
, 나는 더 나은 성능의 방법을 몇 가지 일반적인에 TextViews (TextViewNumber)의 수를 사용하고 싶습니다. .
TextVie를 설정할 때 동일한 문제가 있습니다. WS : 뷰를 이동 핸들들의
switch (TextViewNumber) {
case 2:
newTextView.setId(R.id.IngredientNumber2);
break;
case 3:
newTextView.setId(R.id.IngredientNumber3);
break;
case 4:
newTextView.setId(R.id.IngredientNumber4);
break;
}
더 클래스 :
public class LayoutOrganizer {
public static RelativeLayout.LayoutParams getRelativeLayoutParams(int TExtViewCount, TextView textView) {
RelativeLayout.LayoutParams myLayoutParams = new RelativeLayout.LayoutParams(
LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
myLayoutParams.addRule(RelativeLayout.ALIGN_PARENT_RIGHT);
// this is where I need to access the view ID
myLayoutParams.addRule(RelativeLayout.BELOW, ViewID);
return myLayoutParams;
}
}
TextViewNumber를 사용하는 더 나은 방법에 대한 어떤 아이디어? 당신은 다음을 시도해 볼 수 있습니다
parent.getChildAt(textViewIndex);
를 사용 viewIndex에 의해들이 부모 뷰의 모든 형제 자매 있습니다 또는 경우에 당신이 그들을 액세스 할 수있는'INT 아이디 =의 getResource(). getIdentifier ("IngredientNumber"+ TextViewNumber, "ID", getPackageName()); ' – Blackbelt