簡體   English   中英

Android 如何實現基於箭頭的布局?

[英]Android how can I achieve a arrow based layout?

我想知道如何實現這樣的基於箭頭的布局:

在此處輸入圖片說明 在此處輸入圖片說明 在此處輸入圖片說明 在此處輸入圖片說明

知道什么 Layout 正在使用這個應用程序來實現那個布局嗎? 這似乎是一種交錯網格布局? 或者可能正在使用庫或自定義布局? 我怎樣才能實現類似的目標?

所以這就是我將如何做這樣的事情。

我做了一堆自定義視圖。

自定義視圖 #1:PokemonView。 這是一個常規的約束布局或 CardView,其中包含顯示 pokemon 的所有項目、它的名稱以及所有其他內容。

自定義視圖 #2 EvolutionPokeminView。 這是一個自定義約束布局,包含 PokemonView 和箭頭 ImageView(和下面的 TextView),以及將箭頭放置在不同方向的輔助方法。

例如: setArrowDirection(int direction) \\direction 是所有方向的某種枚舉(top、topLeft、topRight ......等

另一個輔助方法是 setArrorPosition, setArrowPosition(int direction)

然后使用箭頭方向方法將正確的箭頭圖像設置到 arrowImageView 中,並使用箭頭位置方法使用ConstraintSet以編程方式設置箭頭相對於 pokemon 圖像的正確位置。

之后,您准備一些常見的布局以用於不同的數據集並相應地填充它們。

要使這種方法奏效,您需要知道的事情。 如何在 Android 中創建自定義視圖。 如何有效地使用 ConstraintLayout。 如何使用 ConstraintSet 以編程方式編輯 ConstraintLayout 約束。

這很容易...當您為回收者視圖創建子布局時。 您需要為這些箭頭添加一個額外的 imageView...在主要活動中,您只需要將這些箭頭圖像分配給該 imageView 值。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM