0

カードビューを作成しました。ここで、クリックされた画像名を含む TOAST メッセージを表示したいと考えています。助けてください...

画像が追加された私のJavaコード(フラグメント)..

public void prepareAlbums(){
        int[] covers = new int[]{
                R.drawable.album1,
                R.drawable.album2,
                R.drawable.album3,
                R.drawable.album4,
                R.drawable.album5,
                R.drawable.album6,
                R.drawable.album7,
                R.drawable.album8,
                R.drawable.album9,
                R.drawable.album10,
                R.drawable.album11};
        int j=0;

        for(int i=0;i<=10;i++){


            Album  a=new Album("Song"+i,i,covers[j]);
            j++;
            albumList.add(a);
        }
        adapter.notifyDataSetChanged();
    }

私のXMLコード..

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:card_view="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="wrap_content">

    <android.support.v7.widget.CardView
        android:id="@+id/card_view"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_gravity="center"
        android:layout_margin="@dimen/card_margin"
        android:elevation="3dp"
        card_view:cardCornerRadius="@dimen/card_album_radius">

        <RelativeLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            >

            <ImageView
                android:id="@+id/thumbnail"
                android:layout_width="match_parent"
                android:layout_height="@dimen/album_cover_height"
                android:background="?attr/selectableItemBackgroundBorderless"
                android:clickable="true"
                android:onClick="clikii"
                android:scaleType="fitXY" />

            <TextView
                android:id="@+id/title"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_below="@id/thumbnail"
                android:paddingLeft="@dimen/album_title_padding"
                android:paddingRight="@dimen/album_title_padding"
                android:paddingTop="@dimen/album_title_padding"
                android:textColor="@color/album_title"
                android:textSize="@dimen/album_title" />

            <TextView
                android:id="@+id/count"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_below="@id/title"
                android:paddingBottom="@dimen/songs_count_padding_bottom"
                android:paddingLeft="@dimen/album_title_padding"
                android:paddingRight="@dimen/album_title_padding"
                android:textSize="@dimen/songs_count" />

            <ImageView
                android:id="@+id/overflow"
                android:layout_width="@dimen/ic_album_overflow_width"
                android:layout_height="@dimen/ic_album_overflow_height"
                android:layout_alignParentRight="true"
                android:layout_below="@id/thumbnail"
                android:layout_marginTop="@dimen/ic_album_overflow_margin_top"
                android:scaleType="centerCrop"
                android:src="@drawable/ic_dots" />

        </RelativeLayout>

    </android.support.v7.widget.CardView>

</LinearLayout>

ONCLICK メソッドを使用した主なアクティビティ コード...

public void clikii(View view){
        TextView as=(TextView)findViewById(R.id.title);
        String qq=as.getText().toString();


            Toast.makeText(MainActivity.this,qq, Toast.LENGTH_SHORT).show();


    }

ここに画像の説明を入力

このコードを使用すると、最初の image_title のみがすべての画像に表示されます..

画像から名前を取得してTOASTメッセージに表示したい..誰でも助けてください..

4

2 に答える 2

0

このコードを試してください:

public void clikii(View view){
        ViewGroup parent = (ViewGroup) view;
        TextView as = (TextView) parent.findViewById(R.id.title);
        String qq = as.getText().toString();

        Toast.makeText(MainActivity.this, qq, Toast.LENGTH_SHORT).show();
    } 
于 2016-08-11T09:36:54.950 に答える
0
  Try This   
   public void clikii(View view){
    TextView as=(TextView)findViewById(R.id.title);
             as.setText("yourImageNAme");
    String qq=as.getText().toString();


        Toast.makeText(MainActivity.this,qq, Toast.LENGTH_SHORT).show();


}         
于 2016-08-11T09:27:54.733 に答える