fragment에서 spinner를 이용하여 성, 시의 연동을 실현하다
3526 단어 Fragment
4
package com.example.cl;
import android.annotation.SuppressLint;
import android.app.Fragment;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemSelectedListener;
import android.widget.ArrayAdapter;
import android.widget.Spinner;
@SuppressLint({ "NewApi", "ValidFragment" })
public class Yezhuinformation extends Fragment{
private Spinner city;
private Spinner quorxian;
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View v=inflater.inflate(R.layout.yezhuinformation, container, false);
city=(Spinner)v.findViewById(R.id.city);
quorxian = (Spinner)v.findViewById(R.id.quorxian);
ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(getActivity(),
R.array.city, android.R.layout.simple_spinner_item);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_item);
city.setAdapter(adapter);
city.setOnItemSelectedListener(listener);
return v;
}
OnItemSelectedListener listener = new OnItemSelectedListener() {
public void onItemSelected(AdapterView<?> parent, View view,
int position, long id) {
Spinner spinner = (Spinner)parent;
String pro = spinner.getSelectedItem().toString();
ArrayAdapter<CharSequence> xianorquAdapter = ArrayAdapter.createFromResource
(getActivity(), R.array.zhengzhou, android.R.layout.simple_spinner_item);
if(pro.equals(" "))
{
xianorquAdapter = ArrayAdapter.createFromResource
(getActivity(), R.array.wuhan, android.R.layout.simple_spinner_item);
}
else if(pro.equals(" "))
{
xianorquAdapter = ArrayAdapter.createFromResource
(getActivity(), R.array.nanyang, android.R.layout.simple_spinner_item);
}
if(pro.equals(" "))
{
xianorquAdapter = ArrayAdapter.createFromResource
(getActivity(), R.array.zhengzhou, android.R.layout.simple_spinner_item);
}
else if(pro.equals(" "))
{
xianorquAdapter = ArrayAdapter.createFromResource
(getActivity(), R.array.hangzhou, android.R.layout.simple_spinner_item);
}
quorxian.setAdapter(xianorquAdapter);
}
public void onNothingSelected(AdapterView<?> parent) {
}
};
}
(2) 다음에activity에서 성·시 연동을 실현하는 코드를 뿌려라ArrayAdapter
adapter.setDropDownViewResource(android.R.layout.simple_spinner_item);
fragment에서 성, 시의 연동을 실현하는 주요 코드를 다시 한 번 뿌려라
ArrayAdapter
createFromRes의 첫 번째 매개 변수는 주로 하위 클래스가 다르기 때문에 주의해야 한다.
연동 시 setOnItemSelectedListener(listener)만 사용해야 한다.감청을 하면 두 가지 방법을 통해 연동을 실현할 수 있다. 첫 번째는 항목을 얻는 위치이고, 두 번째는 항목의 내용을 얻는 것이다. 나는 두 번째를 사용한다.
이렇게 하면 성 (省) 과 시 (市) 의 연동을 실현할 수 있다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
SharedElementTransition with Navigation Architecture ComponentRecyclerView(일람 화면) -> 세부 화면 구성 SharedElementTransition 적용 Navigation Architecture Component에서 Fragment->Fragment 마이그레이션...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.