Android Webview 内容自适应高度

1
2
3
4
5
6
7
8
9
webview.setWebViewClient(new WebViewClient() {
@Override
public void onPageFinished(WebView view, String url) {
webview.loadUrl("javascript:App.resize(document.getElementById('chatsDataList').scrollHeight)");
super.onPageFinished(view, url);
}
});
webview.addJavascriptInterface(this, "App");
webview.loadUrl("http://localhost:" + Constant.port + "/pages/indexCharts.html");
1
2
3
4
5
6
7
8
9
10
11
@JavascriptInterface
public void resize(final float height) {
getActivity().runOnUiThread(new Runnable() {
@Override
public void run() {
TT.showToast(mContext, height + "");
//此处的 layoutParmas 需要根据父控件类型进行区分,这里为了简单就不这么做了
webview.setLayoutParams(new LinearLayout.LayoutParams(getResources().getDisplayMetrics().widthPixels, (int) (height * getResources().getDisplayMetrics().density)));
}
});
}

注意:

  • chatsDataList要修改成自己的元素
  • 要运行在UI线程
  • 要设置LayoutParams

    webView.getLayoutParams().height =height;是没有用的

java实现定时任务的三种方法(收集)

  • 普通thread

这是最常见的,创建一个thread,然后让它在while循环里一直运行着,通过sleep方法来达到定时任务的效果。这样可以快速简单的实现,代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
package org.sogrey.task;

public class TaskRunnable {

/**
* @param args
*/
public static void main(String[] args) {
// run in a second
final long timeInterval = 1000;
Runnable runnable = new Runnable() {
public void run() {
while (true) {
// ------- code for task to run
System.out.println("Hello !!");
// ------- ends here
try {
Thread.sleep(timeInterval);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
};
Thread thread = new Thread(runnable);
thread.start();
}
}

json转树状结构(收集)

一切都源于项目需求。近期web项目中需要这样的功能:将json数据转为树级结构,json的数据结构如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18

[
{
"id": "1",
"pId": "0",
"value": "水电站项目"
},
{
"id": "2",
"pId": "1",
"value": "项目一标段"
},
{
"id": "3",
"pId": "1",
"value": "项目二标段"
}
]

Hexo建站过程中遇到的问题(填坑篇)

在此收集Hexo建站过程中遇到的问题(填坑)

1 执行 hexo dERROR Deployer not found: git

解决方法: 执行 npm install hexo-deployer-git --save

2 local search 失效(换电脑后)

更换电脑后,源文件打包拷过来,却发现本地搜索失效:

解决方法: 重新安装 search 插件 github

执行 npm install hexo-generator-search --save

重新编译发布正常:

会持续更新…

本站总访问量 | 本文总阅读量