您的位置:首页 > 移动开发 > Android开发

android studio listview控件基础

2016-07-22 16:52 423 查看
public class MainActivityFragment extends Fragment {
private static final String[] str=new String[]{"rain","sunshine"};
private ListView listView;
public MainActivityFragment() {
}

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View rootview=inflater.inflate(R.layout.fragment_main, container, false);
listView=(ListView)rootview.findViewById(R.id.list_item);
ArrayAdapter<String> arrayAdapter=new ArrayAdapter<String>(getActivity(),android.R.layout.simple_list_item_1,str);
listView.setAdapter(arrayAdapter);
return rootview;
}
}

自定义列表显示:

新建一个customlistlayout,其中放置一个texview控件,进行相关设置,id为text;

mainactivity中代码如下:

public class MainActivity extends AppCompatActivity {
String[] strings=new String[]{"india","china"};
ListView listView;
ArrayAdapter<String> arrayAdapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
listView=(ListView)findViewById(R.id.listView);
arrayAdapter=new ArrayAdapter<String>(this,R.layout.customlistview,R.id.text,strings);
listView.setAdapter(arrayAdapter);
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
Toast.makeText(getApplicationContext(),adapterView.getItemAtPosition(i)+"",Toast.LENGTH
4000
_SHORT).show();
}
});
}
}

设置onselect和onpress的颜色:

第一步:

在color.xml中加入:

<color name="select">#c8fd17</color>
<color name="press">#0cc6fe</color>

第二步:

在drawable文件夹下新建一个xml文件:

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:state_pressed="true"
android:drawable="@color/press"></item>
<item
android:state_selected="true"
android:drawable="@color/select"></item>
</selector>

第三步:

在mainactivity中的onitemclick里面加入:

view.setSelected(true);

现在就ok了!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: