Форум программистов, компьютерный форум CyberForum.ru

Программирование Android

Войти
Регистрация
Восстановить пароль
 
waqueee
0 / 0 / 0
Регистрация: 27.04.2015
Сообщений: 14
#1

Что сделать с изображением bitmap, чтобы можно было загрузить в setImageResource() - Программирование Android

18.03.2016, 20:51. Просмотров 192. Ответов 0
Метки нет (Все метки)

Всем привет, пробую написать небольшую программу, в которой помимо "стандартных"(ссылки на изображения храню в списке и загружаю в адаптере(гридвью)), можно добавлять изображения с телефона(галереи), не могу понять как это реализовать, если как говорил выше ссылки на изображения хранятся в списке, а когда пытаюсь загрузить из галереи, то изображение становится bitmap(только этот способ нашел на форуме каком то)
MainActivity.java
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
public class MainActivity extends AppCompatActivity implements View.OnClickListener {
    final int REQUEST = 1;
    Context context;
    GridView gridView;
    List<Integer> imageID = new ArrayList<>();
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
 
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        imageID.add(R.drawable.aliens);
        imageID.add(R.drawable.aliens);
        imageID.add(R.drawable.palm);
        imageID.add(R.drawable.palm);
        imageID.add(R.drawable.aliens);
        imageID.add(R.drawable.aliens);
 
        gridView = (GridView) findViewById(R.id.gridView);
        gridView.setAdapter(new ImageAdapter(this, imageID));
 
        FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab);
        fab.setOnClickListener(this);
 
    }
 
    @Override
    public void onClick(View v) {
        Toast.makeText(MainActivity.this, "hello", Toast.LENGTH_LONG).show();\
        Intent i = new Intent(Intent.ACTION_PICK);
        i.setType("image/*");
        startActivityForResult(i, REQUEST);
 
    }
 
    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
 
        Bitmap img = null;
 
        if (requestCode == REQUEST && resultCode == RESULT_OK) {
            Uri selectedImage = data.getData();
            try {
                img = MediaStore.Images.Media.getBitmap(getContentResolver(), selectedImage);
            } catch (FileNotFoundException e) {
                e.printStackTrace();
            } catch (IOException e) {
                e.printStackTrace();
            }
            image.setImageBitmap(img);
            imageID.add(img);
        }
        super.onActivityResult(requestCode, resultCode, data);
    }
}
IMAGEADAPTER.java
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
public class ImageAdapter extends BaseAdapter {
    private Context context;
    private List<Integer> imageID=new ArrayList<>();
 
    public ImageAdapter(Context context, List<Integer> imageID) {
        this.context = context;
        this.imageID=imageID;
    }
 
    @Override
    public int getCount() {
        return imageID.size();
    }
 
    @Override
    public Object getItem(int position) {
        return imageID.get(position);
    }
 
    @Override
    public long getItemId(int position) {
        return position;
    }
 
    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        LayoutInflater inflater = (LayoutInflater) context
                .getSystemService(Context.LAYOUT_INFLATER_SERVICE);
 
        View gridView;
        if (convertView == null) {
            gridView = new View(context);
            gridView = inflater.inflate(R.layout.item_image_activity, null);
            ImageView imageView = (ImageView) gridView.findViewById(R.id.item_image);
            imageView.setImageResource(imageID.get(position));
        } else gridView=(View) convertView;
        return gridView;
    }
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.03.2016, 20:51     Что сделать с изображением bitmap, чтобы можно было загрузить в setImageResource()
Посмотрите здесь:

PagerAdapter, как сделать, чтобы у каждого итема было свое название и свой вид? - Программирование Android
В этом новичек. Подскажите. class SamplePagerAdapter extends PagerAdapter { @Override public int getCount() { ...

Как добавить андройд-проект в Eclips с Андройдом чтобы после его можно было запустить на виртуальной машине? - Программирование Android
Вот у меня с интернета скачан готовый андрой-проект, но я не знаю как его добавить в остальные проекты чтобы запустить на виртуальной...

Как зашифровать данные на клиенте так, что бы на сервере их можно было расшифровать? - Программирование Android
У меня есть TCP клиент под андроид на JAVA и TCP сервер windows С++. TCP протокол открытый. Я знаю есть библиотека java crypto и OPenSSL....

Можно ли сделать так, чтобы AlertDialog не закрывался - Программирование Android
Можно ли сделать так чтобы AlertDialog не закрывался если обнаруживается что пользователь ввел неверные данные?

Что сделать, чтобы eclipse не ругался на R? - Программирование Android
в строчках на подобии этой: setContentView(R.layout.activity_main); Создаю новый проект и вот такая фигня.

Что нужно знать, чтобы сделать приложение? - Программирование Android
П.С. Прошу не убивать мои фантазии и объективно ответить. пожалуйста. Я не понимаю, что нужно знать. чтобы сделать приложение . ...

SetImageResource в CursorAdapter - Программирование Android
Здравствуйте. Создал свой CursorAdapter public class TodoCursorAdapter extends CursorAdapter { public TodoCursorAdapter(Context...

ImageButton setImageResource - Программирование Android
&lt;ImageButton android:id=&quot;@+id/imageButton1&quot; android:layout_width=&quot;wrap_content&quot; ...

Картинка в imageButton (setImageResource) - Программирование Android
Вопрос такой: В приложении имеется кнопка-картинка (imageButton) при нажатии которой меняется ее фон: public void...

Потерялся сертификат, что можно сделать? - Программирование Android
При переносе файлов затерял куда-то сертификат подписи, обновляя программу, подписал ее снова созданным сертификатом.. А Гугл-плей не хочет...

Запустил парсер, но он читает лишь заголовок, что добавить чтобы можно парсить весь сайт? - Программирование Android
import android.app.Activity; import android.os.AsyncTask; import android.os.Bundle; import android.view.Menu; import...

Как оптимизировать ListviewAdapter чтобы не было разрывов при скроллинге - Программирование Android
Есть адаптер из него не удалось сделать плавный скроллин . Мой ListviewAdapter public class ListViewAdapter extends BaseAdapter...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru