Ai
1 Star 0 Fork 0

AideLua/AndroLua+ 布局编译器

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
LayoutHelper.lua 1.58 KB
一键复制 编辑 原始数据 按行查看 历史
杰西205 提交于 2023-07-28 18:15 +08:00 . 虚拟G增加运算符
local LayoutHelper={}
LayoutHelper._VERSION="1.1(alpha01)"
LayoutHelper._VERSION_CODE=1101
import "android.text.TextUtils"
import "android.util.TypedValue"
import "android.content.Context"
import "android.util.DisplayMetrics"
local ScaleType=ImageView.ScaleType
local OnClickListener=View.OnClickListener
local context=activity or service
local wm =context.getSystemService(Context.WINDOW_SERVICE)
local outMetrics = DisplayMetrics()
wm.getDefaultDisplay().getMetrics(outMetrics)
local W = outMetrics.widthPixels
local H = outMetrics.heightPixels
LayoutHelper.W=W
LayoutHelper.H=H
LayoutHelper.PERCENT_W=W/100
LayoutHelper.PERCENT_H=H/100
local dm=context.getResources().getDisplayMetrics()
LayoutHelper.dm=dm
--LayoutHelper.id=0x7f000000
luajava.ids=luajava.ids or {id=0x7f000000}
local ids=luajava.ids
LayoutHelper.scaleTypes=ScaleType.values()
LayoutHelper.ltrs={}
function LayoutHelper.getClickListener(root,v)
local listener
if LayoutHelper.ltrs[v] then
listener=LayoutHelper.ltrs[v]
else
local l=rawget(root,v)
if type(l)=="function" then
listener=OnClickListener{onClick=l}
elseif type(l)=="userdata" then
listener=l
else
listener=OnClickListener{onClick=function(a)(root[v])(a)end}
end
LayoutHelper.ltrs[v]=listener
end
return listener
end
function LayoutHelper.newId(idName)
ids.id=ids.id+1
return ids.id
end
local ver = luajava.bindClass("android.os.Build").VERSION.SDK_INT;
function LayoutHelper.setBackground(view,bg)
if ver<16 then
view.setBackgroundDrawable(bg)
else
view.setBackground(bg)
end
end
return LayoutHelper
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Lua
1
https://gitee.com/AideLua/AndroLuaLayoutCompiler.git
git@gitee.com:AideLua/AndroLuaLayoutCompiler.git
AideLua
AndroLuaLayoutCompiler
AndroLua+ 布局编译器
master

搜索帮助