标签: android-listview

ListView的Android自定义行项目

我有一个ListView,其行中应该有以下布局:

HEADER
Text
Run Code Online (Sandbox Code Playgroud)

HEADER应该是静态的,但Text每隔几秒就会发生变化.

我通过填充a来实现它String[] array,将其传递给a ArrayAdapter并在每次数据更改时设置它:

data_array = populateString();
adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, android.R.id.text1,  data_array);
listView.setAdapter(adapter);
Run Code Online (Sandbox Code Playgroud)

我的问题是我不知道如何以上面的格式显示数据.

提前致谢.

java android android-arrayadapter android-layout android-listview

74
推荐指数
3
解决办法
13万
查看次数

Android ListView选择器颜色

大家好,

我有两个关于Android中的ListView的问题:

  1. 如何获得 listview重点行的颜色?我试图使用ListView.getSelector()方法,根据它的文档应该给我我正在寻找的东西,但它给了我一个Drawable对象,我不知道如何从中检索颜色(如果可能的话). ..).

  2. 如何设置 listview聚焦行的颜色?在这里,我尝试在listview上使用setSelector()方法,向它传递一个ColorDrawable对象,但这样做的结果是列表视图的整个背景都涂成了那种颜色......这不是我想要的当然...

谢谢!

android android-listview

73
推荐指数
2
解决办法
10万
查看次数

自定义Listview适配器与过滤Android

请尝试在我的listview上实现过滤器.但是每当文本改变时,列表就会消失.请帮助这是我的代码.适配器类.

package com.talagbe.schymn;

import java.util.ArrayList;

import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.TextView;

public class HymnsAdapter extends ArrayAdapter<Hymns> {
ArrayList<Hymns> hymnarray;
Context context;
LayoutInflater inflater;
int Resource;


public HymnsAdapter(Context context, int resource, ArrayList<Hymns> objects) {
    super(context, resource, objects);
    // TODO Auto-generated constructor stub

    hymnarray=objects;
    Resource= resource;
    this.context=context;
    inflater= (LayoutInflater) context.getSystemService(context.LAYOUT_INFLATER_SERVICE);
}


@Override
public View getView(int position, View convertView, ViewGroup parent) {
    // TODO Auto-generated method stub
     ViewHolder holder;
     if(convertView==null){

         convertView= inflater.inflate(Resource,null);
         holder= new ViewHolder();
         holder.hymntitle= (TextView) …
Run Code Online (Sandbox Code Playgroud)

android android-listview custom-adapter

70
推荐指数
3
解决办法
12万
查看次数

android - listview按位置获取项目视图

我有自定义适配器(基本适配器)的listview.我想按位置从listview获取视图.我试过了mListView.getChildAt(position),但它没有用.如何按位置获取项目视图?

android android-listview android-adapter android-view

70
推荐指数
2
解决办法
15万
查看次数

滑动ListView项目从右到左显示删除按钮

我有一个自定义ListView显示从数据库中选择的单词列表.当我刷这个listview项目时,我想显示删除按钮,如下图所示.当我按下该按钮时,它将从数据库中删除并刷新列表视图.米滑动Listview项目

我已在这里查看此示例代码.但它仍然无效.

android android-listview swipe-gesture

69
推荐指数
5
解决办法
18万
查看次数

检测向上滚动并在ListView中向下滚动

我有以下要求:

  • 首先,从服务器获取页面号:2的数据,并在ListView中填充项目.

考虑到场景中的prev页面和下一页都可用,添加了以下代码:

 if(prevPageNo > 0){
    mListViewActual.setOnScrollListener(this);
 }

 if(nextPageNo > 0){
    mListViewActual.setOnScrollListener(this);
 }
Run Code Online (Sandbox Code Playgroud)

我应该在什么条件下检测向上滚动并向下滚动以下方法:

  1. void onScroll(AbsListView视图,int firstVisibleItem,int visibleItemCount,int totalItemCount)
  2. void onScrollStateChanged(AbsListView视图,int scrollState)

操作之后:检测到向上滚动和向下滚动,因此将使用prev page no或next page no调用服务,以获取要在Listview中填充的项目.

任何输入都会有所帮助.

通过以下链接,但它没有返回正确的向上滚动/向下滚动操作:

链接1 链接2

android scrollbar android-listview

68
推荐指数
7
解决办法
12万
查看次数

在Android中使用notifyItemRemoved或notifyDataSetChanged与RecyclerView

我正在创建一个使用RecyclerView显示的卡片列表,其中每张卡片都有一个按钮,可以从列表中删除该卡片.

当我使用notifyItemRemoved()删除RecyclerView中的卡时,它会删除项目和动画,但列表中的数据未正确更新.

如果不是这样,我切换到notifyDataSetChanged()然后列表中的项目被删除并正确更新,但然后卡片不动画.

有人有使用notifyItemRemoved()的经验,并知道为什么它的行为与notifyDataSetChanged不同?

以下是我正在使用的一些代码:

private List<DetectedIssue> issues = new ArrayList<DetectedIssue>();

@Override
public void onBindViewHolder(RecyclerView.ViewHolder holder, int position) {
    // - get element from your dataset at this position
    // - replace the contents of the view with that element
    if(position >0){
        RiskViewHolder riskHolder = (RiskViewHolder)holder;
        final int index = position - 1;
        final DetectedIssue anIssue = issues.get(index);

        riskHolder.button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                try {
                    int index = issues.indexOf(anIssue);
                    issues.remove(anIssue);
                    notifyItemRemoved(index);

                    //notifyDataSetChanged(); …
Run Code Online (Sandbox Code Playgroud)

android android-listview notifydatasetchanged android-recyclerview

67
推荐指数
4
解决办法
4万
查看次数

无法从android.app.FragmentManager转换为android.support.v4.app.FragmentManager

我正在使用Fragments for tablet创建一个应用程序.到目前为止,我已经在左侧创建了一些按钮,并且在单击按钮时会显示片段.

但我在MainActivity.java文件中遇到错误"类型不匹配错误:无法转换android.app.FragmentManagerandroid.support.v4.app.FragmentManager"这是我无法实现它的主要原因.我已经导入了android.support.v4.app.FragmentManager.

我该如何解决我的问题?

我的MainActivity.java代码

      import android.app.Activity;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentTransaction;
import android.view.View;
import android.widget.Button;

public class MainActivity extends Activity {
    Fragment fragment;
    Button btn1,btn2,btn3,btn4,btn5,btn6;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        btn1=(Button)findViewById(R.id.btn1);
        btn2=(Button)findViewById(R.id.btn2);
        btn3=(Button)findViewById(R.id.btn3);
        btn4=(Button)findViewById(R.id.btn4);
        btn5=(Button)findViewById(R.id.btn5);
        btn6=(Button)findViewById(R.id.btn6);

        FragmentManager fm=getFragmentManager();
        FragmentTransaction ft=fm.beginTransaction();

        StartFragment myfragment=new StartFragment();
        ft.add(R.id.myfragment,myfragment);
        ft.commit();
        btn4.setOnClickListener(btnOnClickListener);
        btn5.setOnClickListener(btnOnClickListener);
        btn6.setOnClickListener(btnOnClickListener);
    }



        Button.OnClickListener btnOnClickListener=new Button.OnClickListener(){
            @Override

            public void onClick(View v)
            {
                Fragment newfragment;
                if(v==btn1)
                {
                    newfragment=new Fragment1();
                }
                else …
Run Code Online (Sandbox Code Playgroud)

java android android-listview android-fragments

66
推荐指数
1
解决办法
7万
查看次数

ScrollView中不可滚动的ListView

我正在尝试制作这样的布局:

布局

问题是我不希望ListViews可滚动.我希望它们尽可能高,并使整个屏幕可滚动.如果我将ListView的高度设置为ListViews,则不起作用.使它工作的唯一方法是设置一个特定的高度 - 但我不知道ListView中有多少项.

我知道我不应该将ListView放在ScrollView中 - 但我不希望ListView可以滚动,只是为了显示所有项目.

也许还有更好的方法让它发挥作用?

android scrollview android-listview

66
推荐指数
3
解决办法
4万
查看次数

如何在Android中使ListView透明?

如何在Android中使ListView透明?

应该可以看到后台android屏幕图像.

android android-layout android-listview

64
推荐指数
5
解决办法
9万
查看次数