窗口没有填满整个屏幕
Posted
技术标签:
【中文标题】窗口没有填满整个屏幕【英文标题】:Window doesn't fill all screen 【发布时间】:2016-01-19 20:25:28 【问题描述】:我是 Xamarin 的初学者,这是我的第一个应用程序。我正在做的只是第一步:创建一个视图。我的问题是它没有填满整个屏幕。我删除了视图,然后创建了一个存在同样问题的窗口。
这是 XIB:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="6211" systemVersion="14A298i" targetRuntime="ios.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES">
<dependencies>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="6204"/>
</dependencies>
<objects>
<placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner" customClass="LoginView">
<connections>
<outlet property="window" destination="7" id="176-fQ-JAJ"/>
</connections>
</placeholder>
<placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
<window opaque="NO" clearsContextBeforeDrawing="NO" contentMode="scaleToFill" id="7">
<rect key="frame" x="0.0" y="0.0" />
<color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="calibratedRGB"/>
<simulatedStatusBarMetrics key="simulatedStatusBarMetrics"/>
<simulatedScreenMetrics key="simulatedDestinationMetrics" type="retina4"/>
<point key="canvasLocation" x="-0.2000008" y="20.2"/>
<subviews>
<label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="Label" lineBreakMode="tailTruncation" minimumFontSize="10" id="8" translatesAutoresizingMaskIntoConstraints="NO" fixedFrame="YES">
<rect key="frame" x="139" y="33" />
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
<fontDescription key="fontDescription" type="system" pointSize="17"/>
<color key="textColor" cocoaTouchSystemColor="darkTextColor"/>
<nil key="highlightedColor"/>
</label>
</subviews>
</window>
</objects>
<resources>
<image name="Media.xcassets/AppIcons.appiconset/ic_launcher_120x120.png" />
<image name="Media.xcassets/AppIcons.appiconset/ic_launcher_152x152.png" />
<image name="Media.xcassets/AppIcons.appiconset/ic_launcher_180x180.png" />
<image name="Media.xcassets/AppIcons.appiconset/ic_launcher_29x29.png" />
<image name="Media.xcassets/AppIcons.appiconset/ic_launcher_40x40.png" />
<image name="Media.xcassets/AppIcons.appiconset/ic_launcher_58x58.png" />
<image name="Media.xcassets/AppIcons.appiconset/ic_launcher_76x76.png" />
<image name="Media.xcassets/AppIcons.appiconset/ic_launcher_80x80.png" />
<image name="Media.xcassets/AppIcons.appiconset/ic_launcher_87x87.png" />
</resources>
</document>
我做错了什么?提前致谢。
编辑。
public partial class LoginView : BaseView<LoginViewModel>
public LoginView() : base("LoginView", null)
public override void DidReceiveMemoryWarning()
base.DidReceiveMemoryWarning();
// Release any cached data, images, etc that aren't in use.
public override void ViewDidLoad()
base.ViewDidLoad();
NavigationController.NavigationBarHidden = true;
// Perform any additional setup after loading the view, typically from a nib.
基础视图:
public abstract class BaseView<TViewModel> : MvxViewController, IView<TViewModel> where TViewModel : IViewModel
private IConfigurationService configurationService;
private IGlobalizationService globalizationService;
public BaseView(string nibName, NSBundle bundle) : base(nibName, bundle)
public IConfigurationService ConfigurationService
get
if (this.configurationService == null)
this.configurationService = Mvx.Resolve<IConfigurationService>();
return this.configurationService;
public IGlobalizationService GlobalizationService
get
if (this.globalizationService == null)
this.globalizationService = Mvx.Resolve<IGlobalizationService>();
return this.globalizationService;
public new TViewModel ViewModel
get return (TViewModel)base.ViewModel;
set base.ViewModel = value;
【问题讨论】:
iOS Application Doesn't Fill iPhone Screen的可能重复 我正在使用 MVVM Cross,所以我不使用 UIViewController 或启动屏幕。我也不使用 Xcode……我使用 Visual Studio 进行开发。我做了自己的 LaunchScreen 没有通过 info.plist 调用它 嗨丹尼尔,你是如何构建你的视图或视图控制器的? MvvmCross 只是原生 iOS ViewController 的一个非常薄的包装器。你能展示实际视图控制器的代码或者你是如何创建视图的吗?我们需要更多信息才能继续。 @Stephanvs 我也添加了一个捕获。感谢您的宝贵时间。 我的臀部没有任何问题。 【参考方案1】:解决方案是在 ViewDidLoad 函数中添加此代码
NavigationController.NavigationBarHidden = true;
【讨论】:
很高兴你解决了这个问题,但你对“窗口无法填满屏幕”的描述非常不准确以上是关于窗口没有填满整个屏幕的主要内容,如果未能解决你的问题,请参考以下文章
AVCaptureVideoPreviewLayer 没有填满屏幕