Tôi đang phát triển ứng dụng Windows Phone bằng PhoneGap/Cordova (mặc dù, tôi tin rằng sự cố tôi gặp phải khiến PhoneGap không liên quan). Không có vấn đề gì tôi dường như làm, thẻ của các trang html của tôi không điền vào màn hình theo chiều dọc. Có vẻ tốt khi chạy các trang web trong Chrome hoặc thậm chí IE Đây là những gì nó trông giống như trên Emulator, tôi đã thêm một đường viền màu xanh để thẻ trong .css để nhấn mạnh về những gì đang xảy ra:Chiều cao màn hình của Windows Phone trong ứng dụng PhoneGap không phải 100%
đây là css cho cơ thể:
body{
border: 1px blue solid;
}
html, body{
height:100%;
min-height:100%
}
đây là footers css:
div.navbar_table_container {
width: 100%;
height: auto;
position: absolute;
bottom: 0;
background-image:url(images/bottom-nav.png);
background-size:100% 100%;
background-repeat:no-repeat;
text-align: center;
}
một d, vì nó có thể quan trọng, đây là tập tin XAML:
<phone:PhoneApplicationPage
x:Class="CordovaWP8_2_7_01.MainPage"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:phone="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone"
xmlns:shell="clr-namespace:Microsoft.Phone.Shell;assembly=Microsoft.Phone"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d" FontFamily="{StaticResource PhoneFontFamilyNormal}"
FontSize="{StaticResource PhoneFontSizeNormal}"
Foreground="{StaticResource PhoneForegroundBrush}"
Background="White"
SupportedOrientations="Portrait" Orientation="Portrait"
shell:SystemTray.IsVisible="True" d:DesignHeight="820" d:DesignWidth="480"
xmlns:my="clr-namespace:WPCordovaClassLib">
<Grid x:Name="LayoutRoot" Background="Transparent" HorizontalAlignment="Stretch" VerticalAlignment="Stretch">
<Grid.RowDefinitions>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<my:CordovaView HorizontalAlignment="Stretch"
Margin="0,0,0,0"
x:Name="CordovaView"
VerticalAlignment="Stretch" />
<Image Source="SplashScreenImage.jpg"
x:Name="SplashImage"
VerticalAlignment="Stretch"
HorizontalAlignment="Stretch">
<Image.Projection>
<PlaneProjection x:Name="SplashProjector" CenterOfRotationX="0"/>
</Image.Projection>
</Image>
</Grid>
</phone:PhoneApplicationPage>
một lưu ý quan trọng là nó hoạt động theo cách tôi muốn nó trong Chrome, IE, và khi tôi chạy nó như một ứng dụng Android.
Câu hỏi gần tôi nhất mà tôi có thể tìm thấy là Phonegap Windows Phone gap space bottom nhưng câu trả lời không giúp tôi.
Tôi đã nhận thấy gần đây rằng khi tôi chạy cùng một mã tắt của một máy chủ web và truy cập nó bằng cách sử dụng IE trên một cửa sổ điện thoại, có vẻ tốt. Tuy nhiên, tôi đã nhận thấy rằng bất cứ khi nào một cảnh báo được hiển thị trên điện thoại, thanh địa chỉ của IE biến mất và để lại khoảng cách tương tự EXACT từ dưới cùng của nội dung web đến cuối điện thoại vì ứng dụng gốc luôn hiển thị.
Vì vậy, điều đó khiến tôi tin rằng, mặc dù đó là một "ứng dụng", nếu nó chạy html và javascript, điện thoại sẽ để lại không gian cho thanh địa chỉ, mặc dù nó không bao giờ được sử dụng.
Bất kỳ trợ giúp hoặc thông tin chi tiết nào sẽ được đánh giá cao.
Tôi đã lấy thư mục www từ dự án này và đặt nó vào một dự án Android PhoneGap Eclipse và chạy nó trên trình giả lập Android. Nó có vẻ tốt ở đó. Vì vậy, tôi vẫn không chắc chắn là tại sao nó không chính xác trên điện thoại góa phụ. – Sharpleaf
Tôi đã lấy thư mục www và tải lên máy chủ web của mình và cố điều hướng đến máy chủ bằng cách sử dụng IE trên điện thoại cửa sổ. Làm điều đó, nó định dạng chính xác. Vì vậy, điều này thực sự có một cái gì đó để làm với cách cửa sổ điện thoại xử lý các ứng dụng html tôi đoán. Là một "trang web thực sự", có vẻ tốt, nhưng khi được biên dịch dưới dạng ứng dụng, nó có vấn đề về khoảng cách dưới cùng. – Sharpleaf