常用代碼
//網(wǎng)頁即將加載
if(網(wǎng)頁鏈接:find"url/.")then
停止加載()
進(jìn)入子頁面("游覽",{鏈接=網(wǎng)頁鏈接})
end
//加載本地網(wǎng)頁
("file:///android_asset/drawable/index.html")
//如何調(diào)用瀏覽器打開當(dāng)前頁面败玉?
import "android.content.Intent"
import "android.net.Uri"
url="https://www.lanzous.com/b251218"
viewIntent = Intent("android.intent.action.VIEW",Uri.parse(url))
activity.startActivity(viewIntent)
--瀏覽器打開鏈接
//收到新標(biāo)題
設(shè)置頂欄標(biāo)題(webView.title)
//項(xiàng)目點(diǎn)擊事件
進(jìn)入子頁面("子頁面名",{鏈接="url",標(biāo)題="標(biāo)題名"})
//去頭部留白
document.body.style.paddingTop=0
//顯示或隱藏懸浮按鈕
--顯示懸浮按鈕
fltBtn.setVisibility(View.VISIBLE)
--隱藏懸浮按鈕
fltBtn.setVisibility(View.GONE)
注:fltBtn為懸浮按鈕的ID鹏溯,不需要更改。
//懸浮點(diǎn)擊事件
加載Js([[document.getElementsByClassName("apk_topbar_btn")[0].parentElement.onclick()]])
//懸浮選擇點(diǎn)擊事件
pop=PopupMenu(activity,fltBtn)
menu=pop.Menu
menu.add("選項(xiàng)一").onMenuItemClick=function(a)
進(jìn)入子頁面("子頁面名",{鏈接="url1"..webView.getUrl()})
end
menu.add("選項(xiàng)二").onMenuItemClick=function(a)
進(jìn)入子頁面("子頁面名",{鏈接="url2"..webView.getUrl()})
end
pop.show()
//設(shè)置屏幕方向
import "android.content.pm.ActivityInfo"
activity.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_SENSOR);
//視頻解析播放
加載網(wǎng)頁("vip解析url"..webView.getUrl());
--橫屏
activity.setRequestedOrientation(0);
--豎屏
activity.setRequestedOrientation(1);
//各控件ID
searchEdtTxt 搜索欄
toolbar.parent 頂欄
toolbar 標(biāo)題欄
titleTvw 頂欄標(biāo)題
webView 瀏覽器
fltBtn 懸浮按鈕
pager 滑動(dòng)窗體
popmenu_position 菜單欄
sidebar 側(cè)滑欄顯示圖標(biāo)
pgsBar 進(jìn)度條
sideLvw 側(cè)滑圖標(biāo)
menu_button 菜單圖標(biāo)
menuBtn 側(cè)滑欄圖標(biāo)
//開啟和關(guān)閉側(cè)滑
--打開側(cè)滑
drawerLayout.openDrawer(3)
--關(guān)閉側(cè)滑
drawerLayout.closeDrawer(3)
--均放在點(diǎn)擊事件
--自定義底欄點(diǎn)擊事件
index=1--底欄項(xiàng)目序號
bmBarLin.getChildAt(index-1).onClick=function()
--點(diǎn)擊事件
end
--自定義標(biāo)簽欄點(diǎn)擊事件
local index=1--標(biāo)簽欄項(xiàng)目序號
tabBar.getChildAt(index-1).onClick=function()
--點(diǎn)擊事件
end
-- 多頁面搜索 --
-- By: QQ3
local urls={"https://www.google.com/search?q=%s","https://m.baidu.com/s?wd=%s","https://m.so.com/s?q=%s","http://cn.bing.com/search?q=%s","http://m.chinaso.com/page/search.htm?keys=%s","https://m.sogou.com/web/searchList.jsp?keyword=%s","https://m.sm.cn/s?q=%s"}
searchEdtTxt.setOnEditorActionListener{
onEditorAction=function(view,action,event)
local text=tostring(view.text)
if text~=nil and text~="" then
searchEdtTxt.setHint(text)
local URLEncodeer=import"java.net.URLEncoder"
for index in pairs(urls) do
if allWebView[index] and urls[index]~=nil and urls[index]~="" then
local url=tostring(urls[index]):format(URLEncoder.encode(text))
if pager.getCurrentItem()+1==index then
task(100,function()allWebView[index].loadUrl(url)end)--解決當(dāng)前頁面無法加載(與默認(rèn)搜索事件沖突被覆蓋)的問題
else
allWebView[index].loadUrl(url)
end
end
end
else
SearchEdtTxt.setHint("")
end
end
}
網(wǎng)頁頂欄及頭部空白物理遮蓋
javascript:
if(document.getElementsByTagName('BODY')[0].scrollTop<46){
document.getElementsByTagName('BODY')[0].scrollTop=46;
} else {
return false;
}
浮動(dòng)廣告查殺腳本
var d=document;var s=d.createElement('script');s.setAttribute('src', 'https://greasyfork.org/scripts/7410-jskillad/code/jsKillAD.user.js');d.head.appendChild(s);
清除緩存
//第一部分、程序啟動(dòng)
//自定義事件
function clr()
import "java.io.File"
items={"瀏覽記錄","緩存文件"}
多選對話框=AlertDialog.Builder(this)
.setTitle("清除記錄")
.setPositiveButton("確定",function()
if clearhistory==1 and clearall==1 then
File(lstads).delete()
File(lstwebads).delete()
lst={}
lstweb={}
os.execute("pm clear "..activity.getPackageName())
elseif clearhistory==0 and clearall==1 then
os.execute("pm clear "..activity.getPackageName())
elseif clearhistory==1 and clearall==0 then
File(lstads).delete()
File(lstwebads).delete()
lst={}
lstweb={}
else return nil
end
end)
.setMultiChoiceItems(items, nil,{ onClick=function(v,p)
if p==0 then clearhistory=1
end
if p==1 then clearall=1
end
end})
多選對話框.show();
clearhistory=0
clearall=0
end
//分割線
//第二部分 填入點(diǎn)擊事件
clr()
網(wǎng)絡(luò)檢測
--程序啟動(dòng)時(shí)會執(zhí)行的事件
--程序啟動(dòng)事件
--網(wǎng)絡(luò)檢測
manager = activity.getSystemService(Context.CONNECTIVITY_SERVICE);
gprs = manager.getNetworkInfo(ConnectivityManager.TYPE_MOBILE).getState();
if tostring(gprs)== "CONNECTED" then
--連接
print("你娃兒流量真多")
--上面括號內(nèi)容可任意修改或者刪除print打印事件
else
connManager = activity.getSystemService(Context.CONNECTIVITY_SERVICE)
mWifi = connManager.getNetworkInfo(ConnectivityManager.TYPE_WIFI);
if tostring(mWifi):find("none") then
--未連接
print("網(wǎng)絡(luò)未連接")
--上面括號內(nèi)容可任意修改(不建議刪除)
else
--連接
print("正在使用WIFI網(wǎng)絡(luò)")
--上面括號內(nèi)容可任意修改或者刪除print打印事件
end
end
--將所有的代碼放入程序啟動(dòng)事件里面.
fusionapp布局
--瀏覽器布局
browser=
--布局這里寫
webView.addView(loadlayout(browser))
線性布局
線性布局按照垂直或者水平的順序依次排列子元素,每一個(gè)子元素都位于前一個(gè)元素之后。
垂直排列统阿,那么將是一個(gè)N行單列的結(jié)構(gòu)枚尼,每一行只會有一個(gè)元素,而不論這個(gè)元素的寬度為多少砂吞;
水平排列,那么將是一個(gè)單行N列的結(jié)構(gòu)崎溃。
搭建兩行兩列的結(jié)構(gòu)蜻直,通常的方式是先垂直排列兩個(gè)元素,每一個(gè)元素里再包含一個(gè)LinearLayout進(jìn)行水平排列也就是說縱向和橫向還是可以相互嵌套使用的哦袁串,可以實(shí)現(xiàn)表格布局的效果概而。
{
LinearLayout;
orientation='';--重力屬性
layout_width='';--布局寬度
layout_height='';--布局高度
background='';--布局背景顏色(或者圖片路徑)
};
相對布局
最為常用的布局之一,也是最強(qiáng)大的布局:
*它可以設(shè)置的屬性非常的多
安卓屏幕的分辨率大小不一囱修,所以想到屏幕的自適應(yīng)性赎瑰,開發(fā)中建議大家去使用相對布局。
相對于元素來說破镰,比較容易定位
{
RelativeLayout;
orientation='';--重力屬性
layout_width='';--布局寬度
layout_height='';--布局高度
background='';--布局背景顏色(或者圖片路徑)
};
絕對布局
通常不采用此布局格式
它的界面代碼過于剛性
有可能不能很好的適配各種終端
{
AbsoluteLayout;
orientation='';--重力屬性
layout_width='';--布局寬度
layout_height='';--布局高度
background='';--布局背景顏色(或者圖片路徑)
};
幀布局(框架布局)
是最簡單的布局形式餐曼,所以在實(shí)際開發(fā)中用得比較少。所有添加到這個(gè)布局中的視圖都以層疊的方式顯示鲜漩。第一個(gè)添加的控件被放在最底層源譬,最后一個(gè)添加到框架布局中的視圖顯示在最頂層,上一層的控件會覆蓋下一層的控件孕似。這種顯示方式有些類似于堆棧踩娘。
{
FrameLayout;
orientation='';--重力屬性
layout_width='';--布局寬度
layout_height='';--布局高度
background='';--布局背景顏色(或者圖片路徑)
};
簡單實(shí)現(xiàn)遠(yuǎn)程更新
URL="https://sharechain.qq.com/e568128f6e54ac8acf8feade92984606"--你的遠(yuǎn)端數(shù)據(jù)的地址
Http.get(URL,function(code,cont)
if code ~= 200 then --如果服務(wù)器返回?cái)?shù)據(jù)異常,`
print("服務(wù)器失聯(lián)")
activity.finish()
end
--cont就是服務(wù)器返回的數(shù)據(jù)喉祭,之后所有的代碼都寫在這里
--local用來聲明局部變量养渴,及這里的所以東西對你的其他代碼的都沒有任何影響。
local PackageName=this.getPackageName()--包名
local PackInfo=this.getPackageManager().getPackageInfo(PackageName,64)--包信息
local 本地版本=tonumber(PackInfo.versionCode)--版本號泛烙,這是我們要用的
--由于之后需要進(jìn)行判斷理卑,因此此處使用tonumber()方法轉(zhuǎn)換為數(shù)字
local 遠(yuǎn)端版本=cont:match("【版本】(.-)【版本】")
local 下載地址=cont:match("【下載】(.-)【下載】")
if tonumber(遠(yuǎn)端版本)>本地版本 then
--提示檢測更新
import "android.content.Intent"
import "android.net.Uri"
local viewIntent = Intent("android.intent.action.VIEW",Uri.parse(下載地址))
activity.startActivity(viewIntent)
--順帶提醒下用戶,免得他們一臉懵逼
print("請?jiān)诖蜷_的頁面中下載更新并安裝~")
--當(dāng)然如果你想強(qiáng)制更新的話胶惰,可以把下面這一行加上
activity.finish() --結(jié)束程序
end
end)
網(wǎng)頁添加夜間模式
加載Js([[javascript:(function(){var styleElem=null,doc=document,ie=doc.all,fontColor=50,sel="body,body *";styleElem=createCSS(sel,setStyle(fontColor),styleElem);function setStyle(fontColor){var colorArr=[fontColor,fontColor,fontColor];return"background-color:#212121 !important;color:RGB("+colorArr.join("%,")+"%) !important;"}function createCSS(sel,decl,styleElem){var doc=document,h=doc.getElementsByTagName("head")[0],styleElem=styleElem;if(!styleElem){s=doc.createElement("style");s.setAttribute("type","text/css");styleElem=ie?doc.styleSheets[doc.styleSheets.length-1]:h.appendChild(s)}if(ie){styleElem.addRule(sel,decl)}else{styleElem.innerHTML="";styleElem.appendChild(doc.createTextNode(sel+" {"+decl+"}"))}return styleElem}})();]]