我的应用程序包含ListView,当用户单击其中一个项目时,所选项目颜色将更改为其他颜色.我通过android:listSelector="@android:color/darker_gray"在我的activity_main.xml文件中的ListView中添加它来完成此操作.这正是我正在寻找的,但我有它的问题,因为当用户持有项目但不要点击它时背景颜色也会改变.所以我想知道这是否是一个非常简单的方法,我可以把这个代码:android:listSelector="@android:color/darker_gray"在我的OnItemClick方法.这样,当我点击列表视图中的项目时,我想要更改所选项目背景.另外,我不想重新排列我的列表视图并将所选项目置于顶部,我只是希望用户点击的所有项目都具有不同的背景颜色,这就是为什么我要将编码放在onItemClick中.目前我正在使用我的ListView的默认sample_list_item_1.
关于App的其他信息:这有点像教程应用程序,其中向用户显示教程名称列表.当用户点击名称时,它会加载一个可流式链接,这样用户就可以在应用程序中流式传输它(这已经完成).我还添加了一个toast消息,显示当用户点击可流式链接时(这有点像我想要的eccept而不是toast消息,它将所选项目的背景颜色更改为darker_grey).我能够在if语句中做所有这些.例如:
在OnCreate里面()
String[] Tutorial = getResources().getStringArray(R.array.Tutorial);
spinner1 = (ListView) findViewById(R.id.spinner1);
spinner1.setAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, Tutorial));
spinner1.setOnItemClickListener(new OnItemClickListener()
{
public void onItemClick(AdapterView<?> parent, View v, int pos, long id)
{
if(pos==0)
{
// Do nothing
}
else if(pos==1)
{
Intent i = new Intent();
i.setAction(Intent.ACTION_VIEW);
Uri uri = Uri.parse("https://download846.mediafire.com/8cfxi4026iog/x4ywqe8dc8u2r4f/Hetalia+Season+1+Episode+1.mp4"); /* this is a random link to show you that my programing so far works(Enter link to the selected tutorial here)*/
i.setDataAndType(uri, "video/*");
try {
startActivity(i);
} catch …Run Code Online (Sandbox Code Playgroud)