2017-02-11 2 views
0

Я делаю небольшую игру, и в конце каждого поворота добавляется сводка этого поворота относительно String под названием gameSummary, которая затем устанавливается как текст для TextView в нижней части экрана в ScrollView.Могу ли я создать ArrayList, содержащий TextViews и ImageViews в Android Studio?

Однако, я хотел бы это резюме также показать образы броска кубика для каждого поворота, так что мой текущий метод обновления String переменной не будет работать, так что я имел в виду, используя ArrayList, который добавил к ImageView рулона кости, а затем TextView сводного резюме. Это возможно? Или может кто-нибудь подумать об этом лучше?

ответ

0

Вы можете добавить Изображения в текст TextView. Они называются Spannable с. Для этого вы будете использовать SpannableStringBuilder и ImageSpan. Пример:

SpannableStringBuilder builder = new SpannableStringBuilder("initial text"); 
builder.append("\n"); 
Bitmap image = BitmapFactory.decodeResource(context.getResources(), drawableId); 
int imageIndex = builder.length(); 
builder.setSpan(new ImageSpan(context, image, ImageSpan.ALIGN_BASELINE), 
       index , index+1, Spannable.SPAN_INCLUSIVE_INCLUSIVE); 
textView.setText(builder); 
0

Я бы создал новый класс, который включает в себя ваше изображение и текст, а затем создайте ArrayList этого класса. Я бы, вероятно, затем использовал ListView для их отображения.

(не тестировалось)

public class TurnSummary { 
    private String turnTextSummary; 
    private Bitmap turnDiceImage; 

    public TurnSummary(String summary, Bitmap image) { 
     this.turnTextSummary = summary; 
     this.turnDiceImage = image; 
    } 

    // getters & setters 
} 

Затем создание списка будет:

List<TurnSummary> list = new ArrayList<>(); 
list.add(new TurnSummary(summary, diceImage)); 
Смежные вопросы