将ListView行数据添加到另一个ListView并保存?安卓

苗条的C.

我有一个带歌曲和播放器的ListView。在我ListView我想添加一个功能来button保存ListView行,并将其添加到不同的Activity(收藏夹活动)中的不同的ListView中。我怎样才能做到这一点?

这是我的适配器代码:

public class Adapter extends ArrayAdapter<String> {
    Context context;
    int[] song_icon;
    boolean pausedSamePos = false;
    String[] song_name;
    String[] song_duration;
    String[] song_duration_sb;
    private final int mLcdWidth = 0;
    private final float mDensity = 0;
    public static MediaPlayer mp = new MediaPlayer();
    public static Boolean isPlaying = Boolean.valueOf(false);
    public static int pos = 55;
    Ids holder;
    private final Handler handler = new Handler();
    Runnable updateTimeProgressBar;

    public Adapter(Context c, String[] song_titles, int song_Icons[],
            String[] song_durations) {
        super(c, R.layout.item, R.id.textview_song_duration,
                song_titles);
        this.context = c;
        this.song_icon = song_Icons;
        this.song_name = song_titles;
        this.song_duration = song_durations;
        this.song_duration_sb = song_durations;

    }

    final int[] songPos = { R.raw.song1, R.raw.song2, R.raw.song3,
            R.raw.song4, R.raw.song5, R.raw.song6, R.raw.song7,
            R.raw.song8, R.raw.song9, R.raw.song10,
            R.raw.song11, R.raw.song12, R.raw.song13,
            R.raw.song14, R.raw.song15, R.raw.song16,
            R.raw.song17, R.raw.song18, R.raw.song19,
            R.raw.song20, R.raw.song21, R.raw.song22,
            R.raw.song23, R.raw.song24, R.raw.song25,
            R.raw.song26, R.raw.song27, R.raw.song28,
            R.raw.song29, R.raw.song30, };

    @Override
    public int getViewTypeCount() {

        return getCount();
    }

    @Override
    public int getAdapterViewType(int position) {

        return position;
    }

    @Override
    public View getView(final int position, View convertView, ViewGroup parent) {
        View row = convertView;
        holder = null;
        if (row == null) {

            LayoutInflater inflater = (LayoutInflater) context
                    .getSystemService(Context.LAYOUT_INFLATER_SERVICE);
            row = inflater.inflate(R.layout.item, parent, false);
            holder = new Ids(row);
            row.setTag(holder);
        } else {
            holder = (Ids) row.getTag();

        }

        if (Adapter.isPlaying && Adapter.pos == position) {

            if (pausedSamePos == true) {
                holder.pauseed_play.setVisibility(View.VISIBLE);
                holder.playing_pause.setVisibility(View.GONE);
            } else {
                holder.pauseed_play.setVisibility(View.GONE);
                holder.playing_pause.setVisibility(View.VISIBLE);
            }
            holder.song_currenttime_sb.setVisibility(View.VISIBLE);
            holder.song_duration.setVisibility(View.INVISIBLE);
            holder.song_duration_sb.setVisibility(View.VISIBLE);

            holder.seekbar.setVisibility(View.VISIBLE);
        } else {
            holder.seekbar.setVisibility(View.GONE);
            holder.song_currenttime_sb.setVisibility(View.GONE);
            holder.song_icon.setImageResource(song_icon[position]);
            holder.song_duration_sb.setVisibility(View.INVISIBLE);
            holder.song_duration.setVisibility(View.VISIBLE);
            holder.pauseed_play.setVisibility(View.GONE);
            holder.playing_pause.setVisibility(View.GONE);

        }

        holder.song_name.setText(song_name[position]);
        holder.song_duration.setText(song_duration[position]);

        holder.song_duration_sb.setText(song_duration_sb[position]);
        final Ids finalHolder = holder;


        holder.favorite.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View v) {
                Toast.makeText(context, "The favorite", Toast.LENGTH_SHORT)
                        .show();

            }

        holder.clickRegister
                .setOnLongClickListener(new View.OnLongClickListener() {

                    @Override
                    public boolean onLongClick(View v) {
                        stopPlaying();
                        return true;
                    }
                });
        finalHolder.song_currenttime_sb.setTag(position);
        holder.seekbar.setFocusable(true);
        holder.seekbar.setTag(position);
        holder.clickRegister.setTag(position);
        holder.song_icon.setTag(position);
        holder.song_name.setTag(position);
        holder.song_duration.setTag(position);
        holder.song_duration_sb.setTag(position);

        int widthSpec = MeasureSpec.makeMeasureSpec(
                (int) (mLcdWidth - 10 * mDensity), MeasureSpec.EXACTLY);
        holder.menu_options.measure(widthSpec, 0);
        LinearLayout.LayoutParams params = (LinearLayout.LayoutParams) holder.menu_options
                .getLayoutParams();
        params.bottomMargin = -holder.menu_options.getMeasuredHeight();
        holder.menu_options.setVisibility(View.GONE);
        return row;
    }

我想要的TLDR:要在Clicked Row上获取song_name,song_duration,songPos,并保存它,然后使用该数据在“收藏夹”活动中填充ListView。

如果需要更多详细信息,我将很乐意提供。

机器人人

基本上正确的方法是:

1)创建一个Song模型类,并在该类中声明所有必需的属性

2)扩展BaseAdapter并将其ArrayList<Song>用作数据

使用这种方法,您将能够轻松地Song从单击的行中检索对象并将其传递到所需的任何位置。如果您不知道我在说什么,那么您就缺少关于的一些基本知识,ListView而仅仅向您扔代码毫无意义。有吨教程,看看这一个那一个

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Android-将项目从一个ListView添加到另一个ListView?

来自分类Dev

Android-将项目从另一个活动onButtonClick添加到ListView

来自分类Dev

如何通过单击另一个片段中的按钮将一行添加到ListView中?

来自分类Dev

从另一个SearchActivity将字符串添加到SQLite数据库后,在Fragment中更新ListView

来自分类Dev

如何从另一个类的列表中将项目添加到ListView中

来自分类Dev

一个JList触发将数据添加到另一个JList

来自分类Dev

如何使用基于复选框的选择将多行数据从一个 sql 表添加到另一个?

来自分类Dev

在一个片段中将对象添加到数据库,并在另一个片段中更新listView

来自分类Dev

将数据框列添加到另一个数据框

来自分类Dev

将条件添加到另一个数据框上的条件的数据框

来自分类Dev

将数据框列添加到另一个数据框

来自分类Dev

将列数据作为行数据添加到另一个工作表中,并具有选定的信息

来自分类Dev

使用来自另一个表的数据将列添加到表

来自分类Dev

将记录添加到从另一个表获取数据的字段中

来自分类Dev

如何将另一个项目添加到数据绑定的DropDownList?

来自分类Dev

将日期列添加到数据框以引用另一个日期列

来自分类Dev

将数据添加到另一个类的TableView中

来自分类Dev

如何将另一个孩子添加到响应数据表

来自分类Dev

将临时列表添加到另一个列表中,丢失列表数据

来自分类Dev

将数据添加到另一个表的用户ID表中

来自分类Dev

将数据添加到另一个类的arrayList中

来自分类Dev

将数据框添加到另一个

来自分类Dev

如何将另一个模式数据添加到模型中?

来自分类Dev

如何将数据添加到另一个文件变量中的数组?

来自分类Dev

将范围行从一个数据表添加到另一个

来自分类Dev

将列从一个数据框添加到另一个python pandas

来自分类Dev

将范围行从一个数据表添加到另一个

来自分类Dev

MySQL将数据从一个表添加到另一个表

来自分类Dev

如何将一个 JS 对象的数据添加到另一个

Related 相关文章

  1. 1

    Android-将项目从一个ListView添加到另一个ListView?

  2. 2

    Android-将项目从另一个活动onButtonClick添加到ListView

  3. 3

    如何通过单击另一个片段中的按钮将一行添加到ListView中?

  4. 4

    从另一个SearchActivity将字符串添加到SQLite数据库后,在Fragment中更新ListView

  5. 5

    如何从另一个类的列表中将项目添加到ListView中

  6. 6

    一个JList触发将数据添加到另一个JList

  7. 7

    如何使用基于复选框的选择将多行数据从一个 sql 表添加到另一个?

  8. 8

    在一个片段中将对象添加到数据库,并在另一个片段中更新listView

  9. 9

    将数据框列添加到另一个数据框

  10. 10

    将条件添加到另一个数据框上的条件的数据框

  11. 11

    将数据框列添加到另一个数据框

  12. 12

    将列数据作为行数据添加到另一个工作表中,并具有选定的信息

  13. 13

    使用来自另一个表的数据将列添加到表

  14. 14

    将记录添加到从另一个表获取数据的字段中

  15. 15

    如何将另一个项目添加到数据绑定的DropDownList?

  16. 16

    将日期列添加到数据框以引用另一个日期列

  17. 17

    将数据添加到另一个类的TableView中

  18. 18

    如何将另一个孩子添加到响应数据表

  19. 19

    将临时列表添加到另一个列表中,丢失列表数据

  20. 20

    将数据添加到另一个表的用户ID表中

  21. 21

    将数据添加到另一个类的arrayList中

  22. 22

    将数据框添加到另一个

  23. 23

    如何将另一个模式数据添加到模型中?

  24. 24

    如何将数据添加到另一个文件变量中的数组?

  25. 25

    将范围行从一个数据表添加到另一个

  26. 26

    将列从一个数据框添加到另一个python pandas

  27. 27

    将范围行从一个数据表添加到另一个

  28. 28

    MySQL将数据从一个表添加到另一个表

  29. 29

    如何将一个 JS 对象的数据添加到另一个

热门标签

归档