MyPageActivityのアイコンを表示
1 parent b33e04f commit 53dbe36d3f7e8552e9c209f5753e4ce6b6ddec40
d-matsuura authored on 12 Oct 2023
Showing 1 changed file
View
68
app/src/main/java/com/example/nemophila/MyPageActivity.java
package com.example.nemophila;
 
import androidx.activity.result.ActivityResultCallback;
import androidx.activity.result.ActivityResultLauncher;
import androidx.activity.result.contract.ActivityResultContracts;
import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProvider;
import android.content.DialogInterface;
import android.content.Intent;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.net.Uri;
import android.os.Bundle;
import android.os.Handler;
import android.view.LayoutInflater;
import android.view.View;
 
import com.example.nemophila.entities.Post;
import com.example.nemophila.viewmodels.AccountViewModel;
 
import java.io.BufferedInputStream;
import java.io.ByteArrayOutputStream;
import java.io.FileNotFoundException;
import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.URL;
import java.util.ArrayList;
import java.util.Base64;
import java.util.Collection;
import java.util.List;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
myName.setText(name);
TextView id = (TextView) findViewById(R.id.id);
id.setText(uid);
 
//アイコン仮セット
//url作る
//アイコンを表示する
icon = findViewById(R.id.icon);
iconUrlString = "http://nitta-lab-www.is.konan-u.ac.jp/nemophila-data/test01.jpg";
executor.execute(() -> {
try{
URL url = new URL(iconUrlString);
HttpURLConnection con = (HttpURLConnection) url.openConnection();
con.connect();
 
InputStream is = con.getInputStream();
 
Bitmap bitmap = BitmapFactory.decodeStream(is);
handler.post(() -> icon.setImageBitmap(bitmap));
is.close();
con.disconnect();
}catch (Exception e){
e.printStackTrace();
}
});
iconUrlString = "http://nitta-lab-www.is.konan-u.ac.jp/nemophila-data/icon"+uid+".jpg";;
setIcon(icon);
 
// 「閉じる」ボタンを押したときにメイン画面へ遷移する
Button closeButton = (Button) findViewById(R.id.close);
closeButton.setOnClickListener(new View.OnClickListener() {
}
});
}
 
// アイコンに画像を設定
private void setIcon(ImageView iv) {
executor.execute(() -> {
try{
URL url = new URL(iconUrlString);
HttpURLConnection con = (HttpURLConnection) url.openConnection();
con.connect();
 
InputStream is = con.getInputStream();
 
Bitmap bitmap = BitmapFactory.decodeStream(is);
handler.post(() -> iv.setImageBitmap(bitmap));
is.close();
con.disconnect();
}catch (Exception e){
e.printStackTrace();
iconUrlString = "http://nitta-lab-www.is.konan-u.ac.jp/nemophila-data/test01.jpg";
setIcon(iv);
}
});
}
 
/* ここからMyPageActivityの内部クラス */
 
// Adapter
abstract public class MyPageActAdapter extends RecyclerView.Adapter<MyPageActViewHolder> {