我々は最近、フローラベルこの機能、共有する次のオンラインスクール開発してきました
製品ラベルに適したAndroidのフローレイアウト、ラジオ、チェックボックスなどのサポート、。
レンダリング:
使用法:
依存関係{ コンパイル 'com.hyman:FlowLayoutの-LIB:1.1.2' }
レイアウト:
<! - Max_select:-1オプションの数を制限しないように、> =選択番号1の数が制御タグである- > < COM .zhy.view.flowlayout.TagFlowLayout アンドロイド:ID = "@ + ID / id_flowlayout" ZHY:max_select = " - 1" アンドロイド:layout_width = "match_parent" アンドロイド:layout_height = "wrap_content" アンドロイド:パディング= "20dp" > </ com.zhy.view.flowlayout .TagFlowLayout >
コード:
パブリック クラス FlowlayoutActivityは延びAppCompatActivityを{ TagFlowLayout tagFlowLayout; プライベートリスト<文字列> リスト。 プライベートLayoutInflater layoutInflater。 @オーバーライド 保護された ボイドのonCreate(@NullableバンドルsavedInstanceState){ スーパー.onCreate(savedInstanceState)。 setContentView(R.layout.flowlayout_activity)。 リスト = 新しい ArrayListを<> (); list.add( "ニュース" ); list.add( "食品" )。 list.add( "スポーツ" )。 list.add( "ノーライフ" ); list.add( "予備" ); list.add( "エンターテイメント" )。 list.add( "杭州" )。 list.add( "太の行" ); list.add( "ダンス" ); list.add( "ライブ" )。 list.add( "ニュース" ); list.add( "食品" )。 list.add( "スポーツ" )。 list.add( "ノーライフ" ); list.add( "予備" ); list.add( "エンターテイメント" )。 list.add( "杭州" )。 list.add( "太の行" ); list.add( "ダンス" ); list.add( "ライブ" )。 initView(); } プライベート 無効initView(){ layoutInflater = LayoutInflater.from(本) tagFlowLayout = findViewById(R.id.id_flowlayout)。 tagFlowLayout.setAdapter(新しい TagAdapter <文字列> (リスト) { @オーバーライド パブリックビューgetViewメソッド(FlowLayoutの親、int型の位置、文字列s) { TextViewテレビ = (のTextView)layoutInflater.inflate(R.layout.flowlayout_item_tv、 tagFlowLayout、偽の); tv.setText(S); リターンテレビ; } }); tagFlowLayout.setOnTagClickListener(新しいTagFlowLayout.OnTagClickListener() { @オーバーライド パブリック ブール onTagClick(ビュービュー、int型の位置、FlowLayoutの親) { // クリック値の取得 Toast.makeText(getApplicationContext()、list.get(位置)、Toast.LENGTH_SHORT).SHOWを(); を返す trueに。 } }); tagFlowLayout.setOnSelectListener(新しいTagFlowLayout.OnSelectListener(){ @オーバーライド 公共 のボイド onSelected(セット<整数> selectPosSet){ Log.i( "設定得添字" 、selectPosSet.toString()); //は、ターゲットの次のセットを取得 // Toast.makeText(getApplicationContext()、selectPosSet.toString()+ "S"、Toast.LENGTH_SHORT).SHOW (); } }); / * //選択されたプリセット mAdapter.setSelectedList(1,3,5,7,8,9)。 //選択されたすべてのPOSのコレクションを取得 flowLayout.getSelectedList(); * / } }
地図上のログ:
コードのドキュメントします。https://github.com/hongyangAndroid/FlowLayout