2016-04-01 19 views
0

Ben grafiksel eklenti satırı güncellemesi ile appcelerator studio% .2.0 GA webView kullanıyorum.Webview doğru görüntülemiyor android

Aşağıdaki kod ile Chrome (web görüntülemesi olmadan) gibi web tarayıcısında mükemmel bir görünüm elde ediyorum, ancak Android akıllı telefon veya emülatörde düzgün çalışmıyor. Altta kırmızı çizgi ve strokeGrid üzerinde çift çizgi görünür.

Herkes yardımcı oluyor mu?

JavaScript'e

var count = 0; 

// 
// create base UI tab and root window 
// 
var win = Titanium.UI.createWindow({ 
title:'BtTest', 
backgroundColor:'#eff2d8', 
    layout: 'vertical' 
}); 

var mainView = Ti.UI.createView({ 
    top: 0, 
    width: Ti.UI.SIZE, 
    height: Ti.UI.SIZE, 
    backgroundColor: '#7cd0F7', 
}); 

var webView = Ti.UI.createWebView({ 
    backgroundColor: '#F0F8FF', 
    top:100, 
    left: 0, 
    height: Ti.UI.FILL, 
    width: Ti.UI.FILL, 
    cacheMode: Ti.UI.Android.WEBVIEW_LOAD_NO_CACHE, 
    borderColor: 'black', 
    url: 'html/lineChart.html' 
}); 
mainView.add(webView); 

function send(value) 
{ 
    Ti.App.fireEvent("app:fromChart", {message: value}); 
    Ti.API.info('Sent: ', value); 
    count ++; 
    Ti.API.info("Count: " + count); 
} 

function interval() 
{ 
    setInterval(function() 
    { 
     send(Math.floor(Math.random() * 100)); 
}, 500); 
} 

interval(); 
win.add(mainView); 
win.open(); 

HTML-

<!DOCTYPE html> 
<html> 
<head> 
    <meta charset="utf-8"> 
    <title>JS Bin</title> 
    <script src="../js/Chart.min.js"></script> 
</head> 
<body> 
<canvas id="updating-chart" width="320" height="220"> </canvas> 
<script> 
    var N = 20; 
    var zero_array = []; 

    for (i = 0; i < N; i++) 
    zero_array.push(""); 

    var canvas = document.getElementById('updating-chart'), 
    ctx = canvas.getContext('2d'), 
    startingData = { 
    labels: zero_array, 
    datasets: [ 
    { 
     strokeColor: "rgba(255,0,0,1)", 
     data: [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] 
    }] 
    }, 
    latestLabel = startingData.labels[0]; 
    var lineOptions = { 
    bezierCurve: false, 
    scaleOverlay : false, 
    scaleOverride : false, 
    scaleSteps : null, 
    scaleStepWidth : null, 
    scaleStartValue : null, 
    scaleLineColor : "rgba(0,0,0,1)", 
    scaleLineWidth : 1, 
    scaleShowLabels : true, 
    scaleLabel : "<%=value%>", 
    scaleFontFamily : "'Arial'", 
    scaleFontSize : 12, 
    scaleFontStyle : "normal", 
    scaleFontColor : "#666", 
    scaleShowGridLines : true, 
    scaleGridLineColor : "rgba(0,0,0,1)", 
    scaleGridLineWidth : 1, 
    pointDot : true, 
    pointDotRadius : 0, 
    pointDotStrokeWidth : 1, 
    datasetStroke : true, 
    datasetStrokeWidth : 2, 
    datasetFill : false, 
    animation : false, 
    responsive: false, 
    maintainAspectRatio: true 
    }; 

// We wait for everything to be loaded 
window.onload = function main() 
{ 
    // Get the context of the canvas 
    var ctx = document.getElementById("line_example").getContext("2d"); 
    // Create the Chart object 
    var line_example_chart = new Chart(ctx).Line(data,lineOptions); 
    // Used for the labels on the X axis 
    var label_idx = 1; 
    Ti.App.addEventListener("app:fromChart", function(e) 
    { 
     var msg = e.message;  
     if(msg == 0) msg = 1;   
     line_example_chart.removeData(); 
     line_example_chart.addData([msg], label_idx++);     
    }); 
    window(); 
}; 
</script> 

+0

Bir hata bulduğunuz anlaşılıyor. Bunun için teşekkürler! Bunun, [Appcelerator JIRA] (https://jira.appcelerator.org/) adresinde bilinen bir sorun olup olmadığını kontrol edebilir misiniz? Öyle değilse, lütfen bir bilet oluşturun, bu soruya bağlantı verin, ancak aynı zamanda tekrarlanabilir kod, adımlar ve çevre bilgilerini de biletin kendisinde verin. Buradaki bilete bir bağlantı bırakmayı unutmayın, böylece başkaları sizinle birlikte izleyebilir. –

cevap

0

Eğer android eski bir sürümü için bina varsa, için webview:

Bu

kodudur Appcelerator, şeylerin görünmesine neden olabilecek Chromium tabanlı değildi Biraz farklı. Bu konuda daha fazla okuyabilirsiniz here.

Appcelerator için WebView belgelerine gelen bir alıntı:

Android 4.4 (API Seviye 19) ile başlayarak, WebView bileşeni kendi render motoru bir dizi değişiklik tanıtan, Krom off dayanır. Web içeriği Android sürümüne bağlı olarak farklı görünebilir veya davranabilir. WebView, Android için Chrome ile tam özellikli bir parite sahip değildir.

+0

Teşekkürler Jacob. Ben android sürüm 6.0 api 23 kullanıyorum. İçten dışa göz atmak için çalıştı ancak sonuç aynıydı. – user2355811