DragGridView
DragGridView copied to clipboard
条目拖拽排序控件(主要用于新闻条目)
DragGridView
条目拖拽排序控件(主要用于新闻条目)
效果演示图
Gradle集成
dependencies{
compile 'com.wkp:DragGridView:1.0.1'
//Android Studio3.0+可用以下方式
//implementation 'com.wkp:DragGridView:1.0.1'
}
Note:可能存在Jcenter还在审核阶段,这时会集成失败!
使用讲解
控件DragGridView和DragSortDialog
- DragGridView
布局
<com.peake.draggridview.DragGridView
android:id="@+id/dialog_dgv_top"
android:layout_width="match_parent"
android:layout_height="wrap_content"/>
Note:可以直接java代码创建!
API
1.setHasDrag 设置长按拖拽是否开启
2.setItemViews 设置控件条目
3.addItemView 添加单个条目
4.setColumnCount 设置条目列数
5.setTransitionDuration 设置拖拽动画时长
6.setTextPadding 设置条目文本内间距
7.setTextMargin 设置条目文本外间距
8.setTextSize 设置条目文本字体大小
9.setTextColor 设置条目文本字体颜色
10.setTextNormalBackground 设置条目文本正常背景
11.setTextSelectedBackground 设置条目文本拖拽背景
12.getItem 获取对应文本对象
13.getSortItems 获取排序完成后的所有条目对象
14.getDefaultItems 获取排序完成后的所有条目文本
15.setOnItemClickListener 设置条目点击监听
- DragSortDialog
API
1.setTopItemViews 设置顶部条目
2.setBottomItemViews 设置底部条目
3.setTopHasDrag 设置顶部拖拽功能是否开启
4.setBottomHasDrag 设置底部拖拽功能是否开启
5.getTopItemViews 获取排序后顶部条目对象
6.getTopDefaultItemViews 获取排序后顶部条目文本
7.getTvTitle 获取顶部标题栏
8.getTvDivision 获取分割标题栏
9.setWidth 设置对话框宽度
10.setHeight 设置对话框高度
11.setGravity 设置对话框位置
代码示例
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
//点击弹出对话框
public void showDialog(View view) {
DragSortDialog dialog = new DragSortDialog(this);
dialog.setTopItemViews("ABCDEFG".split("\\B"));
dialog.setBottomItemViews("OPQRST".split("\\B"));
dialog.setOnDismissListener(new DialogInterface.OnDismissListener() {
@Override
public void onDismiss(DialogInterface dialog) {
List<String> list = ((DragSortDialog) dialog).getTopDefaultItemViews();
for (String s : list) {
Log.d("MainActivity", s);
}
}
});
dialog.show();
}
}
Note:对话框只是对DragGridView的封装,DragGridView可以单用!
寄语
控件支持直接代码创建,还有更多API请观看DragGridView.java和DragSortDialog.java内的注释说明。
欢迎大家使用,感觉好用请给个Star鼓励一下,谢谢!
大家如果有更好的意见或建议以及好的灵感,请邮箱作者,谢谢!
QQ邮箱:[email protected]
163邮箱:[email protected]
Gmail邮箱:[email protected]
版本更新
- v1.0.1
新创建拖拽换位控件库
License
Copyright 2017 wkp
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.