我已为3个设备编码如下(下图),并记录密度/分辨率/操作系统(以便您知道哪个设备是哪个)。我有5个按钮和5个图像,每个图像的高度从10dp到50dp。
您会注意到图像出现在所有设备上。所有按钮都出现在XXXHDPI设备(三星S7设备)上,但对于XXHDPI(Nexus 5)和XHDPI(三星S3),10dp按钮消失。为什么呢?
图片如下
我的布局如下(没有其他特殊代码,只是默认的空活动项目)。
public void init() {
this.setWebViewClient(new WebViewClient() {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
if (url.contains("login")) {
presenter.requestLogIn();
return false;
} else {
urlStack.add(url);
}
Map<String, String> extraHeaders = new HashMap<>();
extraHeaders.put("header", "header_info");
loadUrl(url, extraHeaders);
return true;
}
});
getSettings().setLayoutAlgorithm(WebSettings.LayoutAlgorithm.NARROW_COLUMNS);
getSettings().setJavaScriptEnabled(true);
}
private void addCookies(WebPresenter presenter) {
if (presenter.createProperCookie(getContext()) != null) {
List<HttpCookie> cookies = HttpCookie.parse(presenter.createProperCookie(getContext()));
CookieManager cookieManager = CookieManager.getInstance();
if (cookies != null) {
for (HttpCookie cookie : cookies) {
cookieManager.removeAllCookie();
String cookieString = cookie.getName() + "=" + cookie.getValue() + "; domain=" + cookie.getDomain();
cookieManager.setCookie(cookie.getDomain(), cookieString);
}
}
}
}
public void load(String url) {
addCookies(presenter);
loadUrl(url);
}
答案 0 :(得分:0)
最好尝试为文本视图,按钮和图像提供单独的LinearLayout。对于LinearLayout使用android布局权重...希望它能正常工作
答案 1 :(得分:0)
&#34;问题&#34;在默认按钮背景及其内部填充。 修复 - 为按钮背景设置一些颜色
例如
android:background="@android:color/holo_red_dark"