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

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Android Studio 和 Firebase:全屏顯示 ImageView

Android Studio 和 Firebase:全屏顯示 ImageView

FFIVE 2023-06-08 20:42:43
我有一個屏幕顯示我的電影名稱及其在我的 Firebase 中的圖片。我的數(shù)據(jù)庫結(jié)構(gòu)是這樣的。name是我的電影名稱的字符串。profilePic是包含來自 Firebase 存儲的圖片鏈接的字符串。我想要的是,當(dāng)我點擊列出的任何圖片時,我想在另一個更大尺寸的活動中顯示它(比如打開某人的 WhatsApp 或 Facebook 個人資料圖片)這些是我的課程,效果很好。我怎樣才能做到這一點?MyAdapter.javapackage com.example.XXXX;import android.content.Context;import android.support.annotation.NonNull;import android.support.v7.widget.RecyclerView;import android.view.LayoutInflater;import android.view.View;import android.view.ViewGroup;import android.widget.ImageView;import android.widget.TextView;import com.squareup.picasso.Picasso;import java.util.ArrayList;public class MyAdapter extends RecyclerView.Adapter<MyAdapter.MyViewHolder> {? ? Context context;? ? ArrayList<Profile> profiles;? ? public MyAdapter(Context c, ArrayList<Profile> p){? ? ? ? context = c;? ? ? ? profiles = p;? ? }? ? @NonNull? ? @Override? ? public MyViewHolder onCreateViewHolder(@NonNull ViewGroup viewGroup, int i) {? ? ? ? return new MyViewHolder(LayoutInflater.from(context).inflate(R.layout.cardview,viewGroup, false));? ? }? ? @Override? ? public void onBindViewHolder(@NonNull MyViewHolder myViewHolder, int i) {? ? ? ? myViewHolder.name.setText(profiles.get(i).getName());? ? ? ? Picasso.get().load(profiles.get(i).getProfilePic()).into(myViewHolder.profilePic);? ? }? ? @Override? ? public int getItemCount() {? ? ? ? return profiles.size();? ? }? ? class MyViewHolder extends RecyclerView.ViewHolder{? ? ? ? TextView name;? ? ? ? ImageView profilePic;? ? ? ? public MyViewHolder(@NonNull View itemView) {? ? ? ? ? ? super(itemView);? ? ? ? ? ? name = (TextView) itemView.findViewById(R.id.film_name);? ? ? ? ? ? profilePic = (ImageView) itemView.findViewById(R.id.filmProfile);? ? ? ? }? ? }}
查看完整描述

3 回答

?
撒科打諢

TA貢獻(xiàn)1934條經(jīng)驗 獲得超2個贊

將視圖持有者修改為


class MyViewHolder extends RecyclerView.ViewHolder

{

        TextView name;

        ImageView profilePic;

        View mView;

        public MyViewHolder(@NonNull View itemView) 

    {

            super(itemView);

            mView = itemView;

            name = (TextView) itemView.findViewById(R.id.film_name);

            profilePic = (ImageView) itemView.findViewById(R.id.filmProfile);

        }

    }

在適配器中實現(xiàn)視圖持有者的點擊偵聽器,然后使用圖像 url 啟動活動。


@Override

public void onBindViewHolder(@NonNull MyViewHolder myViewHolder, int i) {

    myViewHolder.name.setText(profiles.get(i).getName());

    Picasso.get().load(profiles.get(i).getProfilePic()).into(myViewHolder.profilePic);  

    mViewHolder.mView.setOnClickListener(new View.OnClickListener(){

        @Override

        public void onClick(View v) {

            startImageActivity(profiles.get(i).getProfilePic());

        }

    });

}

3.創(chuàng)建活動并從所需尺寸的圖像視圖開始。


    void startImageActivity(String imgUrl)

    {

    Intent intent = new Intent(context,ViewImage.class);

    intent.putExtra("profilePic",imgUrl);

    context.startActivity(intent);

    }

或者在外部應(yīng)用程序中打開圖像嘗試


    void startImageActivity(String imgUrl)

    {

   Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(imgUrl));             

   context.startActivity(intent);

    }


查看完整回答
反對 回復(fù) 2023-06-08
?
阿晨1998

TA貢獻(xiàn)2037條經(jīng)驗 獲得超6個贊

您可以使用此庫進(jìn)行放大和縮小功能,

你需要在你的項目中添加這個 gradle

實施 'com.otaliastudios:zoomlayout:1.6.1'

檢查下面的示例布局

<?xml?version="1.0"?encoding="utf-8"?>

<LinearLayout

? ? android:layout_width="match_parent"

? ? android:layout_height="match_parent"

? ? android:background="@color/dark_grey"

? ? android:orientation="vertical"

? ? android:weightSum="13">



? ? <ImageView

? ? ? ? android:id="@+id/iv_cancel"

? ? ? ? android:layout_width="wrap_content"

? ? ? ? android:layout_height="wrap_content"

? ? ? ? android:layout_gravity="right"

? ? ? ? android:layout_margin="@dimen/margin_small"

? ? ? ? android:padding="@dimen/margin_small"

? ? ? ? android:src="@drawable/ic_skip" />



? ? <View

? ? ? ? android:layout_width="match_parent"

? ? ? ? android:layout_height="match_parent"

? ? ? ? android:layout_weight="6" />


? ? <com.otaliastudios.zoom.ZoomImageView

? ? ? ? android:id="@+id/zoom_image"

? ? ? ? android:layout_width="match_parent"

? ? ? ? android:layout_height="match_parent"

? ? ? ? android:layout_weight="2"

? ? ? ? android:scrollbars="vertical|horizontal"

? ? ? ? app:alignment="center"

? ? ? ? app:animationDuration="280"

? ? ? ? app:flingEnabled="true"

? ? ? ? app:horizontalPanEnabled="true"

? ? ? ? app:maxZoom="2.5"

? ? ? ? app:maxZoomType="zoom"

? ? ? ? app:minZoom="0.7"

? ? ? ? app:minZoomType="zoom"

? ? ? ? app:overPinchable="true"

? ? ? ? app:overScrollHorizontal="true"

? ? ? ? app:overScrollVertical="true"

? ? ? ? app:transformation="centerInside"

? ? ? ? app:transformationGravity="auto"

? ? ? ? app:verticalPanEnabled="true"

? ? ? ? app:zoomEnabled="true" />


? ? <View

? ? ? ? android:layout_width="match_parent"

? ? ? ? android:layout_height="match_parent"

? ? ? ? android:layout_weight="5" />

</LinearLayout>

在JAVA類中,您需要像下面這樣加載圖像,我正在使用 Glide 進(jìn)行圖像加載,如下所示


?GlideApp.with(this)

? ? ? ? ? ? ? ? ? ? .asBitmap()

? ? ? ? ? ? ? ? ? ? .load(YOUR_IMAGE_URL)

? ? ? ? ? ? ? ? ? ? .into(new SimpleTarget<Bitmap>() {

? ? ? ? ? ? ? ? ? ? ? ? @Override

? ? ? ? ? ? ? ? ? ? ? ? public void onResourceReady(Bitmap resource, Transition<? super Bitmap> transition) {

? ? ? ? ? ? ? ? ? ? ? ? ? ? YOUR_IMAGEVIEW.setImageBitmap(resource);

? ? ? ? ? ? ? ? ? ? ? ? }

? ? ? ? ? ? ? ? ? ? });

檢查ZoomActivity.java下面的演示目的


?public class ZoomActivity extends AppCompatActivity {



? ? @Override

? ? protected void onCreate(@Nullable Bundle savedInstanceState) {

? ? ? ? super.onCreate(savedInstanceState);


? ? ? ? this.requestWindowFeature(Window.FEATURE_NO_TITLE);

? ? ? ? this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);


? ? ? ? setContentView(R.layout.activity_zoom);


? ? ? //? ActivityZoomBinding mBinding = DataBindingUtil.setContentView(this, R.layout.activity_zoom);



? ? ? ? ImageView zoomImage = findViewById(R.id.zoom_image);



? ? ? ? ///GETTING INTENT DATA

? ? ? ? Intent intent = getIntent();

? ? ? ? if (intent.hasExtra("ZOOM_IMAGE")) {


? ? ? ? ? ? String imageUrl = intent.getStringExtra("ZOOM_IMAGE");


? ? ? ? ? ? GlideApp.with(this)

? ? ? ? ? ? ? ? ? ? .asBitmap()

? ? ? ? ? ? ? ? ? ? .load(imageUrl)

? ? ? ? ? ? ? ? ? ? .into(new SimpleTarget<Bitmap>() {

? ? ? ? ? ? ? ? ? ? ? ? @Override

? ? ? ? ? ? ? ? ? ? ? ? public void onResourceReady(Bitmap resource, Transition<? super Bitmap> transition) {

? ? ? ? ? ? ? ? ? ? ? ? ? ? zoomImage.setImageBitmap(resource);

? ? ? ? ? ? ? ? ? ? ? ? }

? ? ? ? ? ? ? ? ? ? });



? ? ? ? }



? ? }



}


查看完整回答
反對 回復(fù) 2023-06-08
?
不負(fù)相思意

TA貢獻(xiàn)1777條經(jīng)驗 獲得超10個贊

調(diào)整位圖大小:

Bitmap resizedBitmap = Bitmap.createScaledBitmap(
    originalBitmap, newWidth, newHeight, false);


查看完整回答
反對 回復(fù) 2023-06-08
  • 3 回答
  • 0 關(guān)注
  • 257 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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