我想知道以下Toast命令中的“ this”是什么意思:
Toast.makeText(MainActivity.this, "msg" ,Toast.Length_long ).show();
如果可以的话,请您解释一下整个命令。
答案 0 :(得分:1)
通常,当您使用构造SomeClass.this
时,这意味着您要引用特定的(通常是“外部”类)。例如,您可以输入以下代码:
class Apple {
void outherMethod() {
}
class AppleType {
void innerMethod(){}
void method(){
Apple.this.outerMethod();
this.innerMethod();
}
}
}
此外,在这种特定情况下,在Android上,这意味着您正在使用通过MainActivity类提供的活动的Context。
因此,整个命令应读取为:
答案 1 :(得分:0)
“这”表示自身。
const array=[{id:1,name:"bla",children:[{id:23,name:"bla",children:[{id:88,name:"bla"},{id:99,name:"bla"}]},{id:43,name:"bla"},{id:45,name:"bla",children:[{id:43,name:"bla"},{id:46,name:"bla"}]}]},{id:12,name:"bla",children:[{id:232,name:"bla",children:[{id:848,name:"bla"},{id:959,name:"bla"}]},{id:433,name:"bla"},{id:445,name:"bla",children:[{id:443,name:"bla"},{id:456,name:"bla",children:[{id:97,name:"bla"},{id:56,name:"bla"}]}]}]},{id:15,name:"bla",children:[{id:263,name:"bla",children:[{id:868,name:"bla"},{id:979,name:"bla"}]},{id:483,name:"bla"},{id:445,name:"bla",children:[{id:423,name:"bla"},{id:436,name:"bla"}]}]}];
const findItemNested = (arr, itemId, nestingKey) => (
arr.reduce((a, item) => {
if (a) return a;
if (item.id === itemId) return item;
if (item[nestingKey]) return findItemNested(item[nestingKey], itemId, nestingKey)
}, null)
);
const res = findItemNested(array, 959, "children");
console.log(res);
调用toast方法,所需参数为“上下文”,“ toast消息”和“ toast持续时间”。
最后.show()表示要烤面包。
答案 2 :(得分:0)
它很清晰,您可以像这样使用它
Toast toast =Toast.makeText(this, "msg", duration);
toast.show();
此:上下文
“ msg”:您的留言
持续时间:Toast.LENGTH_SHORT或Toast.LENGTH_LONG
您可以通过设置重力来更改位置
toast.setGravity(Gravity.CENTER_VERTICAL|Gravity.CENTER_HORIZONTAL, 0, 0);
这将显示吐司中心屏幕