2016-06-08 13 views
0

Ich habe eine ImageView und eine TextView darüber angezeigt "View Album". Ich lade ein Bild innerhalb dieses ImageView unter Verwendung Picasso. Ich möchte dieses TextView verstecken und seinen Klick deaktivieren, bis das Bild in ImageView geladen wird. Wenn Bild nicht heruntergeladen wird, dann verstecke ich die TextView oder sonst TextView wird angezeigt und leitet zu einem anderen Bildschirm um, wenn er geklickt wird. Ich habe versucht,TextView klicken deaktiviert und versteckt, aber immer noch klicken funktioniert Android

     <TextView 
          android:id="@+id/txtViewAlbum" 
          android:layout_width="fill_parent" 
          android:layout_height="25dp" 
          android:layout_gravity="center|bottom" 
          android:background="#435FA7" 
          android:clickable="false" 
          android:gravity="center" 
          android:paddingRight="4dp" 
          android:text="View Album" 
          android:textColor="#ffffff" 
          android:textSize="12sp" 
          android:visibility="gone" /> 

und

txtViewAlbum = (TextView) view.findViewById(R.id.txtViewAlbum); 
    eventImage = (ImageView) view.findViewById(R.id.imgDetail); 
    txtViewAlbum.setVisibility(View.GONE); 
    eventImage.setClickable(false); 
    txtViewAlbum.setClickable(false);` 

an erster Stelle verwendet wird.

Und Bild Laden erfolgt mit:

Picasso picasso = Picasso.with(getActivity()); 
    picasso.setDebugging(true); 
    picasso.setIndicatorsEnabled(false); 
    picasso.load(downloadPath + thumbImg).placeholder(R.drawable.no_image) 
      .error(R.drawable.no_image).into(eventImage, new Callback() { 
       @Override 
       public void onSuccess() { 
        txtViewAlbum.setVisibility(View.VISIBLE); 
        eventImage.setClickable(true); 
        txtViewAlbum.setClickable(true); 

       } 

       @Override 
       public void onError() { 
        Log.d("Error...", "picasso load error"); 
        Picasso.with(getActivity()).load(R.drawable.no_image) 
          .into(eventImage); 
        txtViewAlbum.setVisibility(View.GONE); 
        eventImage.setClickable(false); 
        txtViewAlbum.setClickable(false); 
       } 
      }); 

Aber der TextView Klick arbeitet für wie 2-3 Sekunden, bis das Bild geladen wird. Ich möchte es deaktivieren. Jede Hilfe wird sehr geschätzt.

+0

haben Sie versucht setEnabled (false)? – Hades

+0

ja. das funktioniert nicht – Jas

+0

deaktivieren und verstecken vor dem Laden Bild –

Antwort

0

versuchen, etwas zu verwenden:

mTextView.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      runOnUiThread(new Runnable() { 
       @Override 
       public void run() { 
        // here disable and hide your view 
       } 
      }); 
      // here load your image with on error loading maybe restore views to be visible again 
     } 
    });