第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

ListView OnItemClickListener 歌曲

ListView OnItemClickListener 歌曲

慕神8447489 2023-05-10 15:07:05
我創(chuàng)建了一個(gè) ListView (myList)。通過(guò)按下 ListView 上的其中一項(xiàng),應(yīng)用程序應(yīng)該將用戶定向到 PlaySongActivity 頁(yè)面。我使用了 searchById 函數(shù)來(lái)嘗試匹配歌曲的 ID 和我數(shù)據(jù)庫(kù)中的歌曲。(獲取歌曲的 ID 并匹配數(shù)據(jù)庫(kù)中的歌曲 ID 以播放同一首歌曲)但是,我的老師告訴我我正在搜索ListView 的 ID,而不是歌曲。那么有什么方法可以按歌曲名稱搜索或可能為 ListView 中的每個(gè)項(xiàng)目添加一個(gè) ID?我是編碼的初學(xué)者,已經(jīng)搜索了幾個(gè)小時(shí),但在互聯(lián)網(wǎng)上找不到解決方案:(private SongCollection mySongCollection = new SongCollection();myList.setOnItemClickListener(new AdapterView.OnItemClickListener() {            @Override            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {                Intent intent = new Intent(SearchSong.this, PlaySongActivity.class);                String resourceId = AppUtil.getResourceId(SearchSong.this, myList);                Song selectedSong = mySongCollection.searchById(resourceId);                AppUtil.popMessage(SearchSong.this, "Streaming music: " + selectedSong.getTitle());                intent.putExtra("id", selectedSong.getId());                intent.putExtra("title", selectedSong.getTitle());                intent.putExtra("artiste", selectedSong.getArtiste());                intent.putExtra("fileLink", selectedSong.getFileLink());                intent.putExtra("coverArt", selectedSong.getCoverArt());                startActivity(intent);            }        });SongCollection.class代碼    package com.example.musix;public class SongCollection {    private Song[] allSongs = new Song[9];    public SongCollection (){        prepareSongs();    }
查看完整描述

1 回答

?
慕森卡

TA貢獻(xiàn)1806條經(jīng)驗(yàn) 獲得超8個(gè)贊

String resourceId = AppUtil.getResourceId(SearchSong.this, myList);

 Song selectedSong = mySongCollection.searchById(resourceId);

resourceId 將成為列表視圖元素的 id(例如,第一個(gè)元素 id = 0、第二個(gè) id = 1 等等)。


public Song searchById (String id){

        Song selectedSong = null;

        for(int index=0; index<allSongs.length; index++){

            selectedSong = allSongs[index];

            if(selectedSong.getId().equals(id)){

            return selectedSong;

        }

    }

    return selectedSong;

}

應(yīng)該:


public Song searchById (String id){

        //we are returning the song selected by the index of its Arrays

        Song selectedSong = allSongs[Integer.parseInt(id)];


    return selectedSong;

}

為什么?:


您返回實(shí)際的 songid,但在


 Song selectedSong = mySongCollection.searchById(resourceId); <-- resourceId is already the Id stored in the database and not the index of mySongCollection.

 intent.putExtra("id", selectedSong.getId());

您已經(jīng)在使用實(shí)際歌曲 ID。這沒(méi)有意義,因?yàn)槟呀?jīng)可以識(shí)別出實(shí)際的歌曲。因此,要么應(yīng)用這些更改,要么更改此行:


intent.putExtra("id", resourceId);


查看完整回答
反對(duì) 回復(fù) 2023-05-10
  • 1 回答
  • 0 關(guān)注
  • 290 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)