小编Jua*_*lez的帖子

UICollectionView targetContentOffsetForProposedContentOffset:withScrollingVelocity:不工作?

我无法 targetContentOffsetForProposedContentOffset:withScrollingVelocity:开始使用自定义UICollectionViewFlowLayout.

我想要一个非常基本的修改,其中集合视图每936像素(而不是1024)停止"页面滚动",这适用于横向模式下的ipad.

为此我设置我的集合视图,如此...

-(void)setup
{
    TvGuideFlowLayout *flowLayout = [[TvGuideFlowLayout alloc] init];
    [flowLayout setScrollDirection:UICollectionViewScrollDirectionHorizontal];
    [flowLayout setMinimumInteritemSpacing:0.0f];
    [flowLayout setMinimumLineSpacing:0.0f];
    [flowLayout setItemSize:CGSizeMake(234, 768)];
    [self.collectionView registerClass:[TvGuideCollectionViewCell class] forCellWithReuseIdentifier:@"cellIdentifier"];
    [self.collectionView setPagingEnabled:YES];
    [self.collectionView setCollectionViewLayout:flowLayout];
    [self.collectionView setDelegate:self];
    [self.collectionView setDataSource:self];
    [self.collectionView reloadData];
}
Run Code Online (Sandbox Code Playgroud)

下面的代码被正确调用,但结果被"忽略"或者因为页面滚动仍然每1024px发生一次.

TvGuideFlowLayout.m

- (CGPoint)targetContentOffsetForProposedContentOffset:(CGPoint)proposedContentOffset withScrollingVelocity:(CGPoint)velocity
{
    float offsetX = proposedContentOffset.x / 1024;
    offsetX *= 936;
    CGPoint result = CGPointMake( offsetX, 0);
    return result;
}
Run Code Online (Sandbox Code Playgroud)

我尝试使用负值,但仍然做了1024件事.

我尝试给它一个非常短的偏移量(每468px)并且集合视图根本不滚动,它只是快速回到起始位置.

为什么这不起作用?似乎此调用的结果仅用于建议或仅在满足某些其他条件时使用.

objective-c ios uicollectionview

9
推荐指数
1
解决办法
5583
查看次数

Xcode6 Interface Builder已经"隐藏"了我的观点?

screnshot

关闭图标

我不确定这是怎么发生的,但我的Xcode6项目的视图层次结构已经"隐藏"了.

在左侧的菜单上,视图有一个奇怪的图标,在布局视图和应用程序本身上,视图不会出现.

在右侧,所有约束都是灰色的.

这是一个功能还是一个bug?我真的找不到任何可以点击让他们再次展示的东西.我不小心碰到了捷径吗?

xcode interface-builder ios

8
推荐指数
1
解决办法
2146
查看次数

Android MediaExtractor和mp3流

我正在尝试使用MediaExtractor/MediaCodec播放mp3流.由于延迟和长缓冲区大小,MediaPlayer是不可能的.

我找到的唯一示例代码是:http://dpsm.wordpress.com/category/android/

代码示例只是parcial(?)并使用File而不是stream.

我一直在尝试调整这个例子来播放音频流,但我无法理解它应该如何工作.像往常一样Android文档没有帮助.

据我所知,首先我们获取有关流的信息,可能是使用此信息设置AudioTrack(代码示例包括AudioTrack初始化?)然后打开输入缓冲区和输出缓冲区.

我已经为此重新创建了代码,我可以猜到这将是缺少的部分,但没有音频出来.

有人能指出我正确的方向,以了解这应该如何工作?

public final String LOG_TAG = "mediadecoderexample";
private static int TIMEOUT_US = -1;
MediaCodec codec;
MediaExtractor extractor;

MediaFormat format;
ByteBuffer[] codecInputBuffers;
ByteBuffer[] codecOutputBuffers;
Boolean sawInputEOS = false;
Boolean sawOutputEOS = false;
AudioTrack mAudioTrack;
BufferInfo info;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    String url = "http://82.201.100.9:8000/RADIO538_WEB_MP3";
    extractor = new MediaExtractor();

    try {
        extractor.setDataSource(url);
    } catch (IOException e) {
    }

    format = extractor.getTrackFormat(0);
    String mime = format.getString(MediaFormat.KEY_MIME);
    int sampleRate = format.getInteger(MediaFormat.KEY_SAMPLE_RATE); …
Run Code Online (Sandbox Code Playgroud)

audio mp3 android mediacodec mediaextractor

7
推荐指数
1
解决办法
1万
查看次数

是否可以在没有邀请的情况下连接到Multipeer Connectivity会话?

我正在尝试创建一个类似于FireChat的应用程序,用户可以自动连接到Multipeer Connectivity会话,而无需发送或接收连接邀请.

我见过的所有教程都使用了MCBrowserViewController.必须可以加入会话而无需选择对等连接,并且如果Firechat将其连接,则发送和接受连接请求.

有谁知道如何做到这一点?

谢谢

objective-c ios multipeer-connectivity

7
推荐指数
1
解决办法
3233
查看次数

如何从 Google 的 ExoPlayer 获取观察到的比特率

我正在使用 ExoPlayer 播放 HLS 文件,并且试图获取实际观察到的比特率(而不是指示的比特率)。

我现在有了onInFoListener界面,但文档很粗略,有人可以帮忙吗?

java android http-live-streaming exoplayer

6
推荐指数
1
解决办法
8245
查看次数

将Google ExoPlayer添加到Android studio gradle build

如果我有一个使用Android Studio开发的Android应用程序,可以使用graddle直接从github 链接ExoPlayer库(https://github.com/google/ExoPlayer)吗?

每次由ExoPlayer团队更新时,手动不必手动下载库并将其复制到我的项目中会很方便.

我已经尝试将其添加到build.gradle我的模块中.

repositories {
    mavenCentral()
    maven { url 'https://raw.github.com/google/ExoPlayer' }
}
dependencies {
    compile 'com.google.android.exoplayer'
}
Run Code Online (Sandbox Code Playgroud)

但我得到一个关于模块符号无效的错误...

gradle android-studio

5
推荐指数
1
解决办法
1万
查看次数

UIImageView上的宽度和高度NSLayoutConstraints不起作用

我在View Controller的UIImgeView实例上设置.Width和.Top NSLayoutConstraints updateViewConstraints()。在XCode可视调试器中,我可以看到约束实际上已设置,但是由于某些原因,约束没有被使用(?),它们显示为un(内容大小),并且显示为灰色。当我使用NSLog输出约束时,我也可以看到它们已设置,但是以某种方式图像保持原始大小...这是什么意思?

constraints in parent: [<NSLayoutConstraint:0x7b379590 UIImageView:0x7af897b0.centerX == UIView:0x7b37d2e0.centerX>, 
                        <NSLayoutConstraint:0x7b36e3d0 V:|-(0)-[UIImageView:0x7af897b0]   (Names: '|':UIView:0x7b37d2e0 )>]
constraints in view: [<NSContentSizeLayoutConstraint:0x7ae892b0 H:[UIImageView:0x7af897b0(301)] Hug:251 CompressionResistance:750>, 
                      <NSContentSizeLayoutConstraint:0x7ae834e0 V:[UIImageView:0x7af897b0(365)] Hug:251 CompressionResistance:750>]
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

设置约束的代码:

/// Image view with the character + ellipse
@IBOutlet weak var charImageView: UIImageView!

override func updateViewConstraints() {
      super.updateViewConstraints()
      charImageView.widthLayoutConstraint?.constant = 301.0
      charImageView.heightLayoutConstraint?.constant = 365.0
}
Run Code Online (Sandbox Code Playgroud)

我用来获取扩展名widthLayoutConstraintheightLayoutConstraint

extension UIView{
  /**
   Gets the width layout constraint defined as the NSLayoutConstraint whose first item is self and first attribute is Height …
Run Code Online (Sandbox Code Playgroud)

layout constraints interface-builder ios swift

1
推荐指数
1
解决办法
2457
查看次数