精华内容
下载资源
问答
  • 隐藏分割线

    2015-09-03 20:03:00
    看了好多东西,觉得隐藏多余的分割线,基本两个各思路,一个通过代码,一个代码配合背景图片。 第一种比较常见,在网上到处都这也抄别人的。主要就是说自己定义一个view,弄成透明的,然后盖在...

    看了好多东西,觉得隐藏多余的分割线,基本两个各思路,一个是通过代码,一个是代码配合背景图片。

    第一种比较常见,在网上到处都是,我这也是抄别人的。主要就是说自己定义一个view,弄成透明的,然后盖在TableView的上部和下部,这样就“隐藏”了。

     

    - (void)setExtraCellLineHidden: (UITableView *)tableView{

        UIView *view =[ [UIView alloc]init];

        view.backgroundColor = [UIColor clearColor];

        [tableView setTableFooterView:view];

        [tableView setTableHeaderView:view];

        [view release];

    }

    这个函数调用

     

    - (void)viewDidLoad

    {

        [super viewDidLoad];

    // Do any additional setup after loading the view.

          [self setExtraCellLineHidden:_detailTableView];

    }

     

    好像这还不够,如果TableView没有数据时,会出问题,所以要在

    -(NSInteger) tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section

    判断dataSouce的数据个数

    如果为零可以将_detailTableView.separatorStyle = UITableViewCellSeparatorStyleNone

    然后在大于零时将其设置为

    _detailTableView.separatorStyle = UITableViewCellSeparatorStyleSingleLine

     

    第二种就是比较非主流的一种,给TableView设置没有分割线,然后给每个cell添加背景图片,图片上画一个线,这样,貌似还不用判断数据为空的情况。


    转载于:https://my.oschina.net/u/2435028/blog/500958

    展开全文
  • 看了好多东西,觉得隐藏多余的分割线,基本两个各思路,一个通过代码,一个代码配合背景图片。 第一种比较常见,在网上到处都这也抄别人的。主要就是说自己定义一个view,弄成透明的,然后盖在...

    看了好多东西,觉得隐藏多余的分割线,基本两个各思路,一个是通过代码,一个是代码配合背景图片。

    第一种比较常见,在网上到处都是,我这也是抄别人的。主要就是说自己定义一个view,弄成透明的,然后盖在TableView的上部和下部,这样就“隐藏”了。

     

    [html] view plaincopy在CODE上查看代码片派生到我的代码片

    1. - (void)setExtraCellLineHidden: (UITableView *)tableView{  

    2.   

    3.     UIView *view =[ [UIView alloc]init];  

    4.   

    5.     view.backgroundColor = [UIColor clearColor];  

    6.   

    7.     [tableView setTableFooterView:view];  

    8.   

    9.     [tableView setTableHeaderView:view];  

    10.   

    11.     [view release];  

    12.   

    13. }  



    这个函数调用

     

    - (void)viewDidLoad

    {

        [super viewDidLoad];

    // Do any additional setup after loading the view.

          [self setExtraCellLineHidden:_detailTableView];

    }

     

    好像这还不够,如果TableView没有数据时,会出问题,所以要在

    -(NSInteger) tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section

    判断dataSouce的数据个数

    如果为零可以将_detailTableView.separatorStyle = UITableViewCellSeparatorStyleNone

    然后在大于零时将其设置为

    _detailTableView.separatorStyle = UITableViewCellSeparatorStyleSingleLine

     

    第二种就是比较非主流的一种,给TableView设置没有分割线,然后给每个cell添加背景图片,图片上画一个线,这样,貌似还不用判断数据为空的情况。

     

    第三种: 当背景横向为 有规律的 色变的 时候可以取背景图片 产生出一个color ok

       fuelsTabelView.separatorColor=  [UIColorcolorWithPatternImage:[UIImageimageNamed:@"line2.png"]]; ok了


    转载于:https://my.oschina.net/tonychb/blog/473922

    展开全文
  • 看了好多东西,觉得隐藏多余的分割线,基本两个各思路,一个通过代码,一个代码配合背景图片。 第一种比较常见,在网上到处都这也抄别人的。主要就是说自己定义一个view,弄成透...

    UITableView隐藏多余的分割线

     

    转自

     http://blog.sina.com.cn/s/blog_6f453dd601018o1z.html


    看了好多东西,觉得隐藏多余的分割线,基本两个各思路,一个是通过代码,一个是代码配合背景图片。

    第一种比较常见,在网上到处都是,我这也是抄别人的。主要就是说自己定义一个view,弄成透明的,然后盖在TableView的上部和下部,这样就“隐藏”了。

     

    - (void)setExtraCellLineHidden: (UITableView *)tableView{

        UIView *view =[ [UIView alloc]init];

        view.backgroundColor = [UIColor clearColor];

        [tableView setTableFooterView:view];

        [tableView setTableHeaderView:view];

        [view release];

    }

    这个函数调用

     

    - (void)viewDidLoad

    {

        [super viewDidLoad];

    // Do any additional setup after loading the view.

          [self setExtraCellLineHidden:_detailTableView];

    }

     

    好像这还不够,如果TableView没有数据时,会出问题,所以要在

    -(NSInteger) tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section

    判断dataSouce的数据个数

    如果为零可以将_detailTableView.separatorStyle = UITableViewCellSeparatorStyleNone

    然后在大于零时将其设置为

    _detailTableView.separatorStyle = UITableViewCellSeparatorStyleSingleLine

     

    第二种就是比较非主流的一种,给TableView设置没有分割线,然后给每个cell添加背景图片,图片上画一个线,这样,貌似还不用判断数据为空的情况。

     

    第三种: 当背景横向为 有规律的 色变的 时候可以取背景图片 产生出一个color ok

       fuelsTabelView.separatorColor=  [UIColorcolorWithPatternImage:[UIImageimageNamed:@"line2.png"]]; ok了

    转载于:https://www.cnblogs.com/zander/archive/2013/01/25/2876245.html

    展开全文
  • 我是接着上一篇基础上进行绘制RecylerView的网格布局的,所以前戏就不讲了,关于为什么会想到继承RecyclerView.ItemDecoration之类的看上一篇吧,这篇直接分析然后写代码首先我们来分析RecylerView表格布局分割线...

    一,我是接着上一篇基础上进行绘制RecylerView的网格布局的,所以前戏就不讲了,关于为什么会想到继承RecyclerView.ItemDecoration之类的看上一篇吧,这篇直接分析然后写代码首先我们来分析RecylerView表格布局分割线如何绘制简单。下面来图片进行说明绘制技巧。
    这里写图片描述

    上图简单的画了一个RecylerView网格布局,我们通过上图可以分割出每个item的分割线,然后逐个绘制出所有的item的分割线就可以了如图所示,绘制出每一个item的分割线

    这里写图片描述

    这里可以看出RecylerView绘制分割线不在有判断列表方向是否是水平还是垂直,不同于线性列表绘制过程的是,它需要绘制下边和右边分割线。如图下图分析:

    这里写图片描述

    在item的下边和右边方向上都有偏移量。偏移量分别为我们设置的背景图片的高度和宽度。
    所以在方法getItemOffsets里面可以进行设置每个item分割线各个方向上的偏移量。
    如图我们可以知道,底部方向上为mDivider.getIntrinsicHeight(),右边方向上的偏移量为mDivider.getIntrinsictWidth();左边和上边都为0,所以各个方向偏移量我们都知道了。如下

    在item的下边和右边方向上都有偏移量。偏移量分别为我们设置的背景图片的高度和宽度。
    所以在方法getItemOffsets里面可以进行设置每个item分割线各个方向上的偏移量。
    如图我们可以知道,底部方向上为mDivider.getIntrinsicHeight(),右边方向上的偏移量为mDivider.getIntrinsictWidth();左边和上边都为0,所以各个方向偏移量我们都知道了。如下
    //左边偏移量为0
    int left=0;
    //上边偏移量为0
    int top=0;
    //右边偏移量为我们自定义分割线背景图片的宽度
    int right=mDivider.getIntrinsicWidth();
    //下边我们偏移量为我们自定义分割线背景图片的高度。
    int bottom=mDivider.getIntrinsicHeight();

    这里我需要说明mDivider是我们定义的图片背景或者默认的。
    我们自定义一个宽高为2dp,2dp的图片背景。如下:

    <?xml version="1.0" encoding="utf-8"?>
    <shape xmlns:android="http://schemas.android.com/apk/res/android"
        android:shape="rectangle"
        >
      <size android:height="2dp" android:width="2dp"/>
      <solid android:color="#c714c7"/>
    </shape>

    所以mDivider宽,高是我们设置的2dp,2dp并不是你所看到的绘制之后的长度。
    getItemOffsets里面的代码如下:

    @Override
        public void getItemOffsets(Rect outRect, int itemPosition, RecyclerView parent) {
            super.getItemOffsets(outRect, itemPosition, parent);
            //左边偏移量为0
            int left=0;
            //上边偏移量为0
            int top=0;
            //右边偏移量为我们自定义分割线背景图片的宽度
            int right=mDivider.getIntrinsicWidth();
            //下边我们偏移量为我们自定义分割线背景图片的高度。
            int bottom=mDivider.getIntrinsicHeight();
            outRect.set(left,top,right,bottom);
        }

    然后我们来绘制出所有的item的右边和下边的分割线就完成了最后的绘制。我们先来分析下如何去绘制:如图所示分别绘制每个item的下边分割线如图一,和右边分割线如图二,最后如图三。
    这里写图片描述
    图一
    我们来绘制垂直方向上的水平Divider,首先我们要清楚如何获取Divider索要绘制的位置如图所示:当然了一些细节我这里忽略了。例如Item有设置marginLeft等。

    这里写图片描述

    代码如下:
    private void onDrawHoriziontal(Canvas c, RecyclerView parent) {
        int count = parent.getChildCount();
        for (int i = 0; i < count; i++) {
            View child=parent.getChildAt(i);
            RecyclerView.LayoutParams parames= (RecyclerView.LayoutParams) child.getLayoutParams();
            int left=child.getLeft()-parames.leftMargin;
            int top=child.getBottom()+parames.topMargin;
            int bootom=top+mDivider.getIntrinsicHeight();
            int right=child.getRight()+mDivider.getIntrinsicWidth();
            mDivider.setBounds(left,top,right,bootom);
            mDivider.draw(c);
        }
    }

    运行代码之后如下图所示:
    这里写图片描述
    我们能看见垂直水平方向的红色线条以及绘制完成。接下来绘制竖直方向上的线条。

    这里写图片描述

                       图二
    

    图二分析自己画图试试代码如下:

    private void onDrawVitical(Canvas c, RecyclerView parent) {
        int count = parent.getChildCount();
        for (int i = 0; i < count; i++) {
            View child=parent.getChildAt(i);
            RecyclerView.LayoutParams parames= (RecyclerView.LayoutParams) child.getLayoutParams();
            int left = child.getRight() + parames.rightMargin;
            int right = left + mDivider.getIntrinsicWidth();
            int top = child.getTop() - parames.topMargin;
            int bottom = child.getBottom() + mDivider.getIntrinsicHeight();
            mDivider.setBounds(left, top, right, bottom);
            mDivider.draw(c);
        }
    }

    运行之后如图所示:

    这里写图片描述

    我们自定义的类所有代码如下:

    package com.example.ls.lsn2_materialdesign_recyclerview_decration;
    
    import android.content.Context;
    import android.content.res.TypedArray;
    import android.graphics.Canvas;
    import android.graphics.Rect;
    import android.graphics.drawable.Drawable;
    import android.support.v7.widget.RecyclerView;
    import android.view.View;
    
    /**
     * Created by ls on 2017/8/15.
     */
    
    public class RecylerViewGridViewDivider extends RecyclerView.ItemDecoration {
        private int[] attr = new int[]{android.R.attr.listDivider};
        private Drawable mDivider;
    
        public RecylerViewGridViewDivider(Context context) {
            TypedArray array = context.obtainStyledAttributes(attr);
            mDivider = array.getDrawable(0);
            array.recycle();
        }
    
        @Override
        public void onDraw(Canvas c, RecyclerView parent, RecyclerView.State state) {
            onDrawHoriziontal(c, parent);
            onDrawVitical(c, parent);
            super.onDraw(c, parent, state);
    
        }
    
        private void onDrawHoriziontal(Canvas c, RecyclerView parent) {
            int count = parent.getChildCount();
            for (int i = 0; i < count; i++) {
                View child=parent.getChildAt(i);
                RecyclerView.LayoutParams parames= (RecyclerView.LayoutParams) child.getLayoutParams();
                int left=child.getLeft()-parames.leftMargin;
                int top=child.getBottom()+parames.topMargin;
                int bootom=top+mDivider.getIntrinsicHeight();
                int right=child.getRight()+mDivider.getIntrinsicWidth();
                mDivider.setBounds(left,top,right,bootom);
                mDivider.draw(c);
            }
        }
    
        private void onDrawVitical(Canvas c, RecyclerView parent) {
            int count = parent.getChildCount();
            for (int i = 0; i < count; i++) {
                View child=parent.getChildAt(i);
                RecyclerView.LayoutParams parames= (RecyclerView.LayoutParams) child.getLayoutParams();
                int left = child.getRight() + parames.rightMargin;
                int right = left + mDivider.getIntrinsicWidth();
                int top = child.getTop() - parames.topMargin;
                int bottom = child.getBottom() + mDivider.getIntrinsicHeight();
                mDivider.setBounds(left, top, right, bottom);
                mDivider.draw(c);
            }
        }
    
        @Override
        public void getItemOffsets(Rect outRect, int itemPosition, RecyclerView parent) {
            super.getItemOffsets(outRect, itemPosition, parent);
            //左边偏移量为0
            int left = 0;
            //上边偏移量为0
            int top = 0;
            //右边偏移量为我们自定义分割线背景图片的宽度
            int right = mDivider.getIntrinsicWidth();
            //下边我们偏移量为我们自定义分割线背景图片的高度。
            int bottom = mDivider.getIntrinsicHeight();
            outRect.set(left, top, right, bottom);
        }
    }

    最后贴上项目下载地址:
    https://github.com/luhenchang/Lsn2_MaterialDesign_RecyclerView_Decration.git

    展开全文
  • * 这里实现分割线我用的以下代码实现: ``` mRvShowDuanzhi.addItemDecoration(new DividerItemDecoration(getContext(),DividerItemDecoration.VERTICAL)); ``` **也尝试在XML文件中加一个imagview**...
  • android中ListView默认的分割线是填充满整个listview的宽度的,然后设计师需要的偏偏就是不填充满的状态,找了相关资料,写了个demo验证下。 当然最简单的实现方式就是用图片了,但是图片就要涉及到分辨率,那用...
  • 看了好多东西,觉得隐藏多余的分割线,基本两个各思路,一个通过代码,一个代码配合背景图片。 第一种比较常见,在网上到处都这也抄别人的。主要就是说自己定义一个view,弄成透明的,然后盖在...
  • 标签,但是却没有简单的添加垂直分割线的方法,在学习的这段时间,自己琢磨了一些添加垂直分割线的方法。1.在文本中直接使用符号"|"。优点:简单方便。缺点:不能调整长度,宽度等参数。总结:在制作...
  • 参考:http://blog.csdn.net/xingchenbingbuyu/article/details/50709047其实思想很简单,只是由于当时我水平还不够才觉得很难。...我是选择的喵星人眼睛的颜色赋值的。 代码很简单:#include<opencv2\core\
  • 需要自定义 listView的分割线,而这个分割线是由两条线组成的,在使用xml drawable时遇到了困难。 画两条线为了实现 凹陷的效果,在绘图中一条暗线紧跟着一条明显会给人视觉上产生明显的“沟”的感觉。 因为的...
  • 遇到这样一个场景,需要自定义 listView的分割线,而这个分割线是由两条线组成的,在使用xml drawable时遇到了困难。 注释:画两条线为了实现 凹陷的效果,在绘图中一条暗线紧跟着一条明显会给人视觉上产生...
  • 1、把tableView的separatorStyle设置成UITableViewCellSeparatorStyleNone隐藏系统自带的分割线,然后在cell.contentView上add一个自己定义的分割线(此处有用UIView,也有用UIImageView放上美工的图片),未能解决...
  • 【微信小程序】竖直分割线

    千次阅读 2020-03-13 22:36:31
    文章目录效果做法 ...有点麻烦,的方法 加一张图片,设置长宽 代码如下: //wxml <image src="/icons/line_icon.jpg" class="img_line"></image> //wxss .img_line{ height:39rpx; wi...
  • 下面将从它的目的和思路来一一讲解它到底做了什么 1目的 首先要明确双线插值的目的,它主要求在图像缩放的时候目标图像对应原图像的像素值。 2思路 要想确定目标图像的像素值,双线插值方法的思路通过源图像...
  • 现在,要完成的目标:创建了一个JFrame界面,要分成两部分,操作时两部分完全独立,互不影响,已完成的效果如下: ...然后调用分割线: JSplitPane jSplitPane = new JSplitPane(JSplitPane.H...
  • 看到了 这位老哥 @冰不...于是也想自己尝试一下把图片画一条对角线 在实现了画一条左上角到右下角的对角线后,又尝试画一条从右上角到左下角的对角线。 注意:此次实现以正方形图为模版 Talk is cheap,sh...
  • 图像分割的目的将感兴趣的物体从图片中提取出来,分割的算法有很多种,基本都围绕三要素:颜色、形状、纹理去提取。一般我们常用颜色和形状,因为纹理的数据比较难获取(C#语言下资源很少)Opencv3.*以上版本...
  • 1.标签来存放图片的,它有一个src属性,这来获得图片路径的 路径等同于相对路径跟绝对路径,这里使用的绝对路径,不懂的同学可以查一下子. alt属性为图片的标题WIDTH为图片的宽度HEIGHT为图片的高度. 2....
  • pytorch 版本deeplabv3+ 训练自己的语义分割数据集

    千次阅读 热门讨论 2020-07-20 21:52:28
    首先需要在dataset目录下建立如下图所示的自己的数据集目录,比如海岸线分割数据集,那么在dataset下就建立起sealand文件夹。然后在sealand文件夹下建立起ImageSets、JPEGImages、SegmentationClass三个文件。...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 414
精华内容 165
关键字:

我是分割线图片