2017-06-27 26 views
0

比方說,我有這樣的一段代碼在Android項目:可以創建一個變量作爲多個相同對象屬性訪問的快捷方式嗎?

center.x = (int) (binding.trainingActivityFixationPoint.getX() + 
binding.trainingActivityFixationPoint.getWidth()/2); 

center.y = (int) (binding.trainingActivityFixationPoint.getY() + 
binding.trainingActivityFixationPoint.getHeight()/2); 

從技術上講,訪問多次trainingActivityFixationPoint應該是因爲它是在Android綁定對象已經被緩存,所以我認爲這並不能保證建立一個恆定的操作本身就是一個變量,但是上面的訪問長度對我來說很混亂。它是在這種情況下,更好地引入新的變量,並讓代碼這個樣子的?:

ImageView fixation = binding.trainingActivityFixationPoint; 
center.x = (int) (fixation.getX() + fixation.getWidth()/2); 
center.y = (int) (fixation.getY() + fixation.getHeight()/2); 

我發現自己經常與Android這樣做,但我不知道這是一個很好的做法。

回答

0

這沒有什麼錯 - 它只是對現有對象的引用。請記住,如果這個引用沒有超出範圍,綁定引用的整個對象將不會被垃圾收集。

如果您在方法中使用了固定,例如,它的範圍並不是問題。像這樣的參考資料非常小,只要您不創建數千種,對您的應用程序沒有可衡量的影響。

+0

感謝您的回覆,這就是我的想法;只是需要一些保證,我所做的很好。 – AAryz

+0

好東西 - 在一天結束時,可讀性和清晰度勝過其他所有東西。 – Ewald

相關問題