это звучит легко в начале, но меня сбивает с ума.Проблемы с Android TextView
Так я скачал последнюю версию Android SDK и затмить и теперь есть Somthing нового ....:
при РМКО создании активности и макета он генерирует меня 2 раскладки Somthing как: main_laout.xml и fragment_main .xml
однако eclipse открывал только файл фрагмента, и я сделал свой графический интерфейс там. Когда я запускаю приложение, все мои кнопки и TextViews есть. I Нажмите кнопку, и начнется второе действие.
А вот моя проблема: Вторая активность, как первый (2 макета XML-файлов, но здесь называется статусом)
когда IAM пытается изменить TextView там я получаю исключение NullPointer. Может ли кто-нибудь помочь мне с этим iam, сумасшедшим.
Мой код до сих пор:
statusActivity:
public class StatusActivity extends ActionBarActivity{
private TextView version,dbstatus,dbrows;
private Button done,refresh;
NetworkTask task;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_status);
if (savedInstanceState == null) {
getSupportFragmentManager().beginTransaction()
.add(R.id.container, new PlaceholderFragment()).commit();
}
version=(TextView) findViewById(R.id.versionsOutputTextSTATUS);
dbstatus=(TextView) this.findViewById(R.id.dbstatusOutputTextSTATUS);
dbrows=(TextView) this.findViewById(R.id.dbRowsOutputTextSTATUS);
done=(Button) this.findViewById(R.id.beendenButtonSTATUS);
refresh=(Button) this.findViewById(R.id.refreshButtonSTATUS);
version.setText("Test");
}
И мои XML файлы: activity_status.xml:
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/container"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="de.project.zigbeecontrol.StatusActivity"
tools:ignore="MergeRootFrame" />
fragment_status.xml:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/eisblumen"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="de.project.zigbeecontrol.StatusActivity$PlaceholderFragment" >
<TextView
android:id="@+id/welcomeTextSTATUS"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="43dp"
android:text="@string/status"
android:textAppearance="?android:attr/textAppearanceLarge" />
<TextView
android:id="@+id/versionsOutputTextSTATUS"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/versionTextSTATUS"
android:layout_alignBottom="@+id/versionTextSTATUS"
android:layout_marginLeft="24dp"
android:layout_toRightOf="@+id/versionTextSTATUS"
android:text="@string/empty"
android:textAppearance="?android:attr/textAppearanceMedium" />
<TextView
android:id="@+id/dbstatusOutputTextSTATUS"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@+id/dbstatusTextSTATUS"
android:layout_alignLeft="@+id/versionsOutputTextSTATUS"
android:text="@string/empty"
android:textAppearance="?android:attr/textAppearanceMedium" />
<Button
android:id="@+id/beendenButtonSTATUS"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/welcomeTextSTATUS"
android:layout_alignParentBottom="true"
android:layout_alignRight="@+id/welcomeTextSTATUS"
android:background="@drawable/button_trans"
android:text="@string/endeStatus"
android:onClick="onClickStatus" />
<TextView
android:id="@+id/dbRowsTextSTATUS"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@+id/beendenButtonSTATUS"
android:layout_alignRight="@+id/dbstatusTextSTATUS"
android:layout_marginBottom="26dp"
android:text="@string/dbrows"
android:textAppearance="?android:attr/textAppearanceMedium" />
<TextView
android:id="@+id/dbstatusTextSTATUS"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_toLeftOf="@+id/beendenButtonSTATUS"
android:text="@string/datenbankstatus"
android:textAppearance="?android:attr/textAppearanceMedium" />
<TextView
android:id="@+id/versionTextSTATUS"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignRight="@+id/dbstatusTextSTATUS"
android:layout_below="@+id/welcomeTextSTATUS"
android:layout_marginTop="56dp"
android:text="@string/version"
android:textAppearance="?android:attr/textAppearanceMedium" />
<TextView
android:id="@+id/dbRowsOutputTextSTATUS"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/dbRowsTextSTATUS"
android:layout_alignBottom="@+id/dbRowsTextSTATUS"
android:layout_alignLeft="@+id/dbstatusOutputTextSTATUS"
android:text="@string/empty"
android:textAppearance="?android:attr/textAppearanceMedium" />
<Button
android:id="@+id/refreshButtonSTATUS"
style="?android:attr/buttonStyleSmall"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@+id/welcomeTextSTATUS"
android:layout_marginBottom="17dp"
android:layout_marginLeft="31dp"
android:layout_toRightOf="@+id/welcomeTextSTATUS"
android:text="@string/refresh"
android:onClick="onClickStatus" />
</RelativeLayout>
, даже если его работы я выкладываю части «главной» программе тоже, так что вы можете увидеть, как я работал там: MainActivity:
public class MainActivity extends ActionBarActivity{
//Buttons
private Button beendenButton;
private Button statusbutton;
private Button restartButton;
private Button auswertungButton;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
if (savedInstanceState == null) {
getSupportFragmentManager().beginTransaction()
.add(R.id.container, new PlaceholderFragment()).commit();
}
/*Zuweißung der Buttons */
beendenButton=(Button) this.findViewById(R.id.endButtonMAIN);
statusbutton=(Button) this.findViewById(R.id.statusButtonMAIN);
restartButton=(Button) this.findViewById(R.id.restartButtonMAIN);
auswertungButton=(Button)this.findViewById(R.id.auswertungButtonMAIN);
/*Fertig mit initzialisieren warten auf Eingabe*/
}
private void statusMethod() {
try{
Intent intent = new Intent(this, StatusActivity.class);
startActivity(intent);
this.finish();
}catch(Exception e){errorMessage();}
}
//.... Some uninterresting Stuff here
public void onClick(View v)
{
switch (v.getId())
{
/*Auswahl was gedrückt wurde und aufruf der Entsprechenden Methode */
case R.id.endButtonMAIN: endActivity(); break;
case R.id.statusButtonMAIN: statusMethod();break;
case R.id.restartButtonMAIN: restartMethod();break;
case R.id.auswertungButtonMAIN: sensorMethod(); break;
default: break;
}
}
}
И два XMLs из макета:
activity_main:
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/container"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="de.project.zigbeecontrol.MainActivity"
tools:ignore="MergeRootFrame"
/>
и последнее, но не в последнюю очередь fragment_main:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/eisblumen"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="de.project.zigbeecontrol.MainActivity$PlaceholderFragment" >
<Button
android:id="@+id/endButtonMAIN"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_toRightOf="@+id/welcomeTextMAIN"
android:background="@drawable/button_trans"
android:text="@string/beenden"
android:onClick="onClick" />
<TextView
android:id="@+id/welcomeTextMAIN"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/endButtonMAIN"
android:layout_centerHorizontal="true"
android:text="@string/welcome"
android:textAppearance="?android:attr/textAppearanceLarge" />
<Button
android:id="@+id/statusButtonMAIN"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/welcomeTextMAIN"
android:layout_centerHorizontal="true"
android:layout_marginTop="39dp"
android:background="@drawable/button_trans"
android:text="@string/status"
android:onClick="onClick" />
<Button
android:id="@+id/restartButtonMAIN"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/statusButtonMAIN"
android:layout_below="@+id/statusButtonMAIN"
android:layout_marginTop="19dp"
android:background="@drawable/button_trans"
android:text="@string/neustart"
android:onClick="onClick" />
<Button
android:id="@+id/auswertungButtonMAIN"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/restartButtonMAIN"
android:layout_below="@+id/restartButtonMAIN"
android:layout_marginTop="33dp"
android:background="@drawable/button_trans"
android:text="@string/sensoren"
android:onClick="onClick" />
</RelativeLayout>
Так PLZ! почему я получаю NPE при попытке:
version.setText("Test");
С уважением
где 'activity_status.xml' –