所以我得到了這段代碼,并嘗試在我的 imageView 上使用旋轉,但是在使用 findviewbyid 時它會拋出 null,但我在同一個類中有它。我在同一個專案中有幾個單獨的活動,這是其中之一,從主要活動打開
package com.example.gyakorlozh;
ImageView kedvencEvszak;
TextView tw;
Animation anim;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_evszak);
kedvencEvszak.findViewById(R.id.kedvencEvszak);
tw.findViewById(R.id.textView);
anim = AnimationUtils.loadAnimation(EvszakActivity.this, R.anim.kepanimacio);
kedvencEvszak.startAnimation(anim);
}
如果我嘗試運行它會崩潰,請幫我解決這個問題。
影片是一個簡單的旋轉:
<rotate android:pivotY="50%"
android:pivotX="50%"
android:fromDegrees="0"
android:toDegrees="360"
android:duration = "2000"
android:startOffset = "3000"/>
uj5u.com熱心網友回復:
假設您的 XML 和其他內容已正確配置。
這兩個都沒有做任何事情,
kedvencEvszak.findViewById(R.id.kedvencEvszak);
tw.findViewById(R.id.textView);
所以當你這樣做時
kedvencEvszak.startAnimation(anim);
kedvencEvszak是不存在的,這就是為什么你得到一個NPE例外。
嘗試這樣做,
kedvencEvszak = findViewById(R.id.kedvencEvszak);
tw = findViewById(R.id.textView);
然后,從kedvencEvszak
kedvencEvszak.startAnimation(anim);
反過來,您發布的onCreate代碼將變成這樣
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_evszak);
kedvencEvszak = findViewById(R.id.kedvencEvszak);
tw = findViewById(R.id.textView);
anim = AnimationUtils.loadAnimation(EvszakActivity.this, R.anim.kepanimacio);
kedvencEvszak.startAnimation(anim);
}
與throwingTextView tw沒有任何關系,但我添加它是為了避免你頭疼,以防萬一你決定用它做點什么。kedvencEvszakNullPointerException
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/520732.html
標籤:爪哇安卓安卓工作室
下一篇:從Github克隆的存盤庫給出錯誤Designeditorisavailableuntilnextgradlesync
