Mein Android Projekt Ziel Bauen ist 5.1.1 API 22Spinner Fehlfunktion auf Lollipop
Diese App scheint für jede Betriebssystem-Version außer Lollipop zu arbeiten. Lollipop restrukturiert die Höhe einiger Aktivitäten (negiert das scrollbare Layout) und stört die Spinner.
Durch Klicken auf eine bestimmte Position auf einem Drehfeld wird eine andere Position in der App eingegeben. Ich weiß nicht warum und ich weiß nicht, wie ich das beheben soll. In einigen Fällen, selbst wenn Sie auf eine Schaltfläche auf dem Drehfeld klicken, wird die unterste Schaltfläche auf dem Drehfeld registriert. Bei einigen Spinnern erlaubt es dem Benutzer überhaupt nicht zu scrollen.
Einer meiner defekten Spinner-Codes ist wie folgt:
ArrayAdapter<String>adapterl4 = new ArrayAdapter<String>(this,
android.R.layout.simple_spinner_item,hbmlevel){
public boolean isEnabled(int position){
displayData(position);
return true;
}
};
selecthbm = (Spinner)findViewById(R.id.selecthbmlvl);
adapterl4.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
selecthbm.setAdapter(adapterl4);
selecthbm.setOnItemSelectedListener(this);
ich auch eine globale Variable für die Funktion displayData
aber ich habe immer noch die gleichen Ergebnisse versucht haben.
Die App ist eine sehr einfache Anwendung, die Sie here herunterladen und läuft auf Java-Compiler Compliance-Ebene 1.7
Der Beginn meiner xml wie folgt aussieht:
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="fill_parent"
xmlns:ads="http://schemas.android.com/apk/res-auto"
android:fillViewport="true"
android:background="#C2DFFF">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
displayData:
public void displayData(int pos){
herolvlTV.setText(hbmherolvl[pos]);
hbmshardTV.setText(getResources().getString(R.string.shards)+" " +String.valueOf(hbmshards[pos]));
hbmexpTV.setText(getResources().getString(R.string.maxexp)+" " +String.valueOf(hbmmaxexp[pos]));
}
Was Methode 'ist displayData' tut das? – fRoStBiT
@fRoStBiT Es ist nur setText für einige Textansichten – krikara
Warum machst du es in 'isEnabled()'? Sie sollten es in 'getView()' tun. – fRoStBiT