如何从匿名内部类中获取价值?

时间:2016-02-13 08:02:30

标签: java anonymous

我有一个ImageView,我需要在Java中获取图像宽度和高度并将它们存储在一些变量中并使用它我需要的一些时间,但是当我想要保存高度和宽度值时,它将返回消息字符串的NULL值。

我创建了一些外部方法并将值传递给它以获取商店值,但它也不起作用,我创建了一个文本视图,我为TextView文本指定了值,它在屏幕中显示但是当我使用{{1}时为了获取文本,它获得了Text视图的默认文本,看,没有任何方法可以从内部类获取值,有没有办法从匿名内部类中获取值?

[13, 22, 30]

1 个答案:

答案 0 :(得分:1)

您的代码应该很好地获取值,您的问题是您在代码运行之前输出它。 onPreDraw()中的所有代码都不会立即执行,而是定义并设置为稍后运行,只要vto" preDraw"事件发生了。您之前拨打Toast.makeText的电话会在此之后发生#34;之后"来了。

要延迟Toast.makeText()来电,您有两种选择。你可以把它放在一个类似的"稍后再运行"阻止,或者您可以使用某种线程间协调工具。对于前一个选项,添加另一个OnPreDrawListener并将呼叫置于其中。你已经知道如何做到这一点。

对于后一种选择,我建议使用CountDownLatch。在调用countDown()之前,在onPreDraw()末尾对其进行初始化,其中await()Toast.makeText(),而await()countDown()。这将保证在H.L = new int* [H.n]; 调用返回时, <div id="myCarousel" class="carousel slide carousel-fade" data-ride="carousel" > <div class="carousel-inner"> <div class="item active"> <div > </div> </div> </div> </div> <div class="container-fluid box"> <div class="row" id="triple"> <div class="col-xs-4 one"> <p>123</p> </div> <div class="col-xs-4 two"> <p>456</p> </div> <div class="col-xs-4 three"> <p>789</p> </div> </div> <div class="row" id="single"> <div class="col-xs-4 four"> </div> <div class="col-xs-4 four"> </div> <div class="col-xs-4 four"> </div> </div> 调用的代码已完成。请注意,这仅在两个代码段在不同线程中运行时才有效。否则,它将永远失速。在这种情况下,我非常确定它们确实在不同的主题中运行,但总的来说还要牢记这一点。