在表面视图中拖放瓷砖

时间:2014-10-04 08:43:08

标签: java android surfaceview

目前我正在申请。它使用:

  • 表面视图
  • 在表面视图上,我根据宽度和高度分割屏幕
  • 然后根据频道数量(4/9/16)创建divison以显示频道数量

    int width = getWidth();
    int height = getHeight();
    int offset = -miStartIndex / 4 * getWidth();
    for (int i = 0; i < mVideoArray.size(); i++)
    {
           int divWidth = width / 2;
           int divHeight = divWidth * 3 / 4;
    
            switch (i % 4)
            {
                case 0 :
                    setLocation(divWidth * 0 + offset, divHeight * 0 + mTop);
                    break;
               case 1 :
                    setLocation(divWidth * 1 + offset, divHeight * 0 + mTop);
                    break;
                case 2 :
                    setLocation(divWidth * 0 + offset, divHeight * 1 + mTop);
                    break;
                case 3 :
                    setLocation(divWidth * 1 + offset, divHeight * 1 + mTop);
                    offset += getWidth();.....
                    break;
                default :
                    break;
         }
    
  • 因此,使用此代码,我创建了4个方格来显示4个频道
  • 在每个频道中,我会显示一些视频的直播。

    channel 1, channel 2,
    channel 3, channel 4.
    

    现在我需要实现的下一个功能是切换 用户可以在频道之间拖放。例如,将通道2移动到第4位置。这样做会将实时流显示为

    channel 1, channel 4,
    channel 3, channel 2.
    
    1. 我不知道如何使用表面视图实现此切换切换

    2. 如何将一个正方形(例如ch 1)移动到表面视图内的另一个地方(例如ch3)

我希望了解如何在表面视图中实现两个方格之间拖放的可能性

0 个答案:

没有答案