我想在我的主视图的子视图中放置一个Facebook共享按钮(可能是一个类似的按钮或发送按钮),这个按钮显示在屏幕的底部四分之一处。子视图看起来很好,并且足以容纳按钮 - 请参阅下面屏幕截图中的红色部分。但由于某种原因,按钮出现在屏幕的左上角,偏移-70,-452。就好像按钮处理代码决定在左上角渲染按钮而不管渲染的位置。
关于如何将其移至我需要的地方的任何想法?
这是我用来调出按钮的代码:
FBSDKSharePhotoContent *content = [[FBSDKSharePhotoContent alloc] init];
content.photos = @[photo];
content.contentURL = [NSURL URLWithString:@"xxx"];
FBSDKShareButton *button = [[FBSDKShareButton alloc] init];
button.shareContent = content;
[self.shareContainer addSubview:button];
答案 0 :(得分:1)
你应该尝试这个按钮.center = self.shareContainer.center。
您基本上试图将按钮的中心设置为其容器的中心。
答案 1 :(得分:0)
我发现了这个问题。我的Facebook代码在<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
</head>
<body>
<div class="btn btn-xs" id="btn1"><i class="glyphicon glyphicon-play"></i></div>
<div class="btn btn-xs" id="btn2"><i class="glyphicon glyphicon-play"></i></div>
<div class="btn btn-xs" id="btn3"><i class="glyphicon glyphicon-play"></i></div>
<!-- SOUNDS -->
<audio id="sound1">
<source src="http://www.internetdj.com/mp3/108215.mp3" type="audio/mpeg" />
</audio>
<audio id="sound2">
<source src="http://www.bigsoundbank.com/sounds/ogg/0580.ogg" type="audio/ogg" />
</audio>
<audio id="sound3">
<source src="http://www.bigsoundbank.com/sounds/ogg/0003.ogg" type="audio/ogg" />
</audio>
</body>
<script src="js/jquery-2.1.4.min.js"></script>
<script src="js/bootstrap.min.js"></script>
<link href="css/bootstrap.css" rel="stylesheet" />
<script type="text/javascript">
$('.btn').click(function () {
var $this = $(this);
var id = $this.attr('id').replace(/btn/, '');
var play = '<div class="btn btn-xs"><i class="glyphicon glyphicon-play"></i></div>';
var pause = '<div class="btn btn-xs"><i class="glyphicon glyphicon-pause"></i></div>';
$this.toggleClass('active');
if ($this.hasClass('active')) {
$this.html(pause);
$('audio[id^="sound"]')[id - 1].play();
} else {
$this.html(play);
$('audio[id^="sound"]')[id - 1].pause();
$('audio[id^="sound"]')[id - 1].pause();
}
});
</script>
</html>
- 这意味着在执行它时autolayout没有生效,并且容器视图没有在屏幕上找到它的位置。解决方案是将相同的代码放在viewDidLayoutSubviews中。