Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
CrossoX
3 / 3 / 0
Регистрация: 23.10.2014
Сообщений: 140
#1

Открыть изображение на втором activity - Программирование Android

14.12.2016, 11:22. Просмотров 315. Ответов 8
Метки нет (Все метки)

Добрый день. Я новичок и нуждаюсь в помощи
Я написал программу, в которой выбираешь изображение из галереи(или с помощью камеры) и она снизу показывает.
Задача в том что при клике на изображение оно открывалось во втором activity
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
56
57
58
59
60
61
62
63
64
65
66
package com.example.crosso.mygallery;
 
import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
import android.provider.MediaStore;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.ImageButton;
import android.widget.ImageView;
 
public class MainActivity extends Activity {
 
    Uri selectedImage;
    ImageView preview;
    ImageButton gallery;
    ImageButton camera;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        gallery=(ImageButton)findViewById(R.id.gallery_button);
        camera=(ImageButton)findViewById(R.id.camera_button);
        preview=(ImageView)findViewById(R.id.selected_image);
 
        camera.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Intent takepic=new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
                startActivityForResult(takepic,0);
            }
        });
 
        gallery.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Intent choosegal=new Intent(Intent.ACTION_PICK,MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
                startActivityForResult(choosegal,1);
            }
        });
    }
    @Override
    protected void onActivityResult(int req,int res,Intent imagereturn)
    {
        super.onActivityResult(req,res,imagereturn);
        switch (req)
        {
            case 0:
                if(res==RESULT_OK) {
                    selectedImage = imagereturn.getData();
                    preview.setImageURI(selectedImage);
                }
                break;
            case 1:
                if(res==RESULT_OK)
                {
                    selectedImage=imagereturn.getData();
                    preview.setImageURI(selectedImage);
                }
                break;
        }
 
 
    }
}
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.12.2016, 11:22
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Открыть изображение на втором activity (Программирование Android):

Как передать ссылку на изображение в другое Activity - Программирование Android
Привет, пытаюсь сделать что то типа ежедневника. столкнулся с проблемой. В общем. Имеется 1 Активити, на нем ImageView (смайлик), по...

Как открыть Activity по открытии ссылки? - Программирование Android
Допустим, у нас есть WebView, как открывать Activity при открытии определенной ссылки? Например, http://localhost/login/ - открываем...

При попытке открыть второй и третий Activity происходит завершение работы программы - Программирование Android
Подскажите где ошибка. В программирование андроида пару дней. При попытке открыть второй и третий Activity происходит завершение работы...

Приложение зависает, если свернуть и развернуть Activity или перейти на другую Activity - Программирование Android
У меня в параллельном потоке происходит куча apply() Решение использовать apply вместо commit было принято из-за скорости. Но...

Android - Передача данных с одного Activity на другое Activity - Программирование Android
Здравствуйте , возникла необходимость получения числовых (int и float ну или double) данных в одном Activity , а обработка и вывод...

Изменение layout-элементов одного activity из другого activity - Программирование Android
Здравствуйте! Я хочу изменить размер или цвет текста TextView в одном activity из второго activity, каким образом мне можно это...

8
vxg
Модератор
3184 / 1987 / 227
Регистрация: 13.01.2012
Сообщений: 7,680
14.12.2016, 11:32 #2
CrossoX, и как это выглядит со стороны? человек находится на активити, нажимает на кнопку выбрать при помощи камеры, открывается камера, он делает фото и его выносит не на ту активити с которой он нажал кнопку, а на другую закрыв которую он попадает на исходную?
0
CrossoX
3 / 3 / 0
Регистрация: 23.10.2014
Сообщений: 140
14.12.2016, 11:37  [ТС] #3
vxg, нет когда юзер выбирает фото то превюшка открывается на этой активити, а потом когда он кликает на превюшку то уже тогда открывается второй активити с этой же фото по размеру дисплея
0
Pablito
2525 / 2004 / 624
Регистрация: 12.05.2014
Сообщений: 7,030
Завершенные тесты: 1
14.12.2016, 11:39 #4
а почему просто не показывать фото в ImageView в той же активити на весь экран?
0
CrossoX
3 / 3 / 0
Регистрация: 23.10.2014
Сообщений: 140
14.12.2016, 11:40  [ТС] #5
Паблито, ну вот задача такая)) можете помочь?
0
vxg
Модератор
3184 / 1987 / 227
Регистрация: 13.01.2012
Сообщений: 7,680
14.12.2016, 12:49 #6
CrossoX, возвращаясь из процедуры выбора стартуйте еще одну активити в которую передавайте путь к картине и отображайте ее
0
CrossoX
3 / 3 / 0
Регистрация: 23.10.2014
Сообщений: 140
14.12.2016, 12:54  [ТС] #7
vxg, В МейнАктивити выбранная картинка отображается в ImageView. Потом я добавил это
Java
1
2
3
4
5
6
7
8
9
preview.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Intent choose=new Intent(MainActivity.this,SecondActivity.class);
                choose.setType("image/*");
                choose.putExtra("img",preview.getId());
                startActivity(choose);
            }
        });
и написал код СекондАктивити
Java
1
2
3
4
5
6
7
8
9
10
public class SecondActivity extends Activity {
 
    ImageView image;
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.second_activity);
        image=(ImageView)findViewById(R.id.ramka);
        image.setImageResource(getIntent().getIntExtra("img",0));
    }
}
но не получается
0
demixdn
232 / 179 / 56
Регистрация: 31.10.2016
Сообщений: 406
14.12.2016, 13:14 #8
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Видите разницу между вашим кодом?
Цитата Сообщение от CrossoX Посмотреть сообщение
selectedImage = imagereturn.getData();
preview.setImageURI(selectedImage);
Цитата Сообщение от CrossoX Посмотреть сообщение
choose.putExtra("img",preview.getId());
Цитата Сообщение от CrossoX Посмотреть сообщение
image.setImageResource(getIntent().getIntExtra("img",0));
preview.getId() - это id вашей imageView, а не ссылка на картинку.
setImageResource(int) - означает, что вы загружаете картинку из своих ресурсов.

Вам в след. активити нужно передавать selectedImage , и там уже устанавливать картинку image.setImageURI(selectedImage)
1
CrossoX
3 / 3 / 0
Регистрация: 23.10.2014
Сообщений: 140
14.12.2016, 13:38  [ТС] #9
demixdn, если попрошу можете показать мне как передать selectedimage?
0
14.12.2016, 13:38
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.12.2016, 13:38
Привет! Вот еще темы с ответами:

Из одной Activity запустить функцию другой Activity - Программирование Android
например есть Activity2 которое я показываю в Dialog окошке, там у меня находятся Date and Time Picker ы (Дата - начало, Дата - окончание)...

Из одного Activity получить значение другого Activity - Программирование Android
Запускаю активити: public class MainActivity extends Activity { ... ... Intent intent = new Intent(getBaseContext(),...

Вызвать из одной activity функцию другой activity - Программирование Android
вызвать из одного activity функцию другой activity Подскажите, можно ли такое реализовать? Допустим у меня есть основная активити и...

Как вызвать Activity не из Activity? - Программирование Android
Приложение перехватываем входящие СМС. Есть класс унаследованный от BroadcastReceiver, который обозначен в манифесте как приемник...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Опции темы

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