저는 Actionbarsherlock을 사용 중이며 사용자 정의 작업 표시 줄 레이아웃을 사용하려고하지만 여전히 탐색 목록이 필요합니다. 그 결과 나는 IcsSpinner 위젯을 포함하고 있습니다. 그러나 너비는 항상 가장 큰 항목만큼 커야하며 이는 바람직하지 않습니다. 나는이 같은 결과 디버그에 액션 바에서 그것을 깨고 여전히 가지고 :Actionbarsherlock IcsSpinner - 너비가 항상 가장 넓은 항목으로 설정 됨
조각 코드를
public class TestFragment extends SherlockFragment {
private final String[] testStrings = {"Short","Not so long text"};
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View view=inflater.inflate(R.layout.test_layout, container, false);
IcsSpinner spinner = (IcsSpinner)view.findViewById(R.id.test_spinner);
ArrayAdapter<String> adapter = new ArrayAdapter<String>(getActivity(),
R.layout.spiner_test_row, R.id.spinner_text, testStrings);
spinner.setAdapter(adapter);
return(view);
}
}
test_layout.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<com.actionbarsherlock.internal.widget.IcsSpinner
android:id="@+id/test_spinner"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
</LinearLayout>
R .layout.spinner_test_row
<?xml version="1.0" encoding="utf-8"?>
<TextView
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/spinner_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="16sp" />
미세 (진저 브레드 에뮬레이터에서) 표준 스피너에 작품 변경 :
어떤 제안?
@JakeWharton Wharton 어떻게 내부를 사용하지 않고 위의 진저 브레드 결과를 com.actionbarsherlock.internal.widget.IcsSpinner와 함께 사용합니까? – taraloca