İki gün boyunca bu problemle uğraşıyorum ve hala bir çözüm bulamıyorum, sanırım temel bilgi birikimim zayıf.Bir dizide Metin Görünümleri nasıl yerleştirilir ve bunları FindViewById nasıl bulunur?
Şimdi yaklaşık yirmi TextView
ilan ettim ve bilmek istiyorum TextView
bir diziye ve findViewById
bunları depolamak için bir yolu var mı?
public class MainActivity extends Activity {
private TextView name, address;
LinkedHashMap<Integer, TextView> demo = new LinkedHashMap<>();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
int temp;
allTextview = new TextView[]{name, address};
for(int i=0; i<allTextview.length; i++){
temp = getResources().getIdentifier(allTextview[i], "id", getPackageName());
allTextview[i] = (TextView)findViewById(temp);
}
}}
Bu yöntem neden "ad" ve "allTextview [0]" aynı nesneye işaret değildir. Aynı zamanda this solution kullanıyorum, ama yine de aynı.
Sanırım "isim" ve "adres" nedeni açıklandı ve henüz herhangi bir nesneye işaret etmedi, nasıl çözebilirim?
Döngü için findViewById
kullanmak istiyorum ve TextView
ile bir şeyler yapmak için hem "ad" hem de "allTextview [0]" kullanabilirsiniz.
Yardımınız için teşekkürler ve lütfen kötü İngilizce'm için özür dilerim.
Sadece ilk denemek ve isim, adres için kimlik atayın File ... 'name.setId (int)' – MKJParekh
Neden öyle mi olduğunu Böyle bir TextViews Arrayını başlatmak istiyor musunuz? Böyle bir şey yapmak için daha basit/daha verimli olmaz: int [] ids = new int [] {R.id.nameTextView, R.id.addressTextView} 've sonra için (int i = 0; i < id.length; i ++) {allTextViews [i] = (TextView) findViewById (ids [i]);} –