2016-11-09 1 views
-1

Gibt nichts in der Textansicht ein mein Code;Ich kann Text in ViewPager nicht setzen

öffentliche Klasse MainActivity erweitert Aktivität { private Schaltfläche Schaltfläche;

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 



    button=(Button)findViewById(R.id.button); 

    button.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View view) { 

      Intent intent = new Intent(MainActivity.this,page.class); 
      startActivity(intent); 

     } 
    }); 

} 

}

public class CustomPagerAdapter extends PagerAdapter { 

private Context mContext; 

public CustomPagerAdapter(Context context) { 
    mContext = context; 
} 

@Override 
public Object instantiateItem(ViewGroup collection, int position) { 
    ModelObject modelObject = ModelObject.values()[position]; 
    LayoutInflater inflater = LayoutInflater.from(mContext); 
    ViewGroup layout = (ViewGroup) inflater.inflate(modelObject.getLayoutResId(), collection, false); 
    collection.addView(layout); 
    return layout; 
} 

@Override 
public void destroyItem(ViewGroup collection, int position, Object view) { 
    collection.removeView((View) view); 
} 

@Override 
public int getCount() { 
    return ModelObject.values().length; 
} 

@Override 
public boolean isViewFromObject(View view, Object object) { 
    return view == object; 
} 

@Override 
public CharSequence getPageTitle(int position) { 
    ModelObject customPagerEnum = ModelObject.values()[position]; 

    return mContext.getString(customPagerEnum.getTitleResId()); 
} 

}

public enum ModelObject { 

WHİTE(R.string.white,R.layout.view_white), 
GREEN(R.string.green, R.layout.view_green); 

private int mTitleResId; 
private int mLayoutResId; 

ModelObject(int titleResId, int layoutResId) { 
    mTitleResId = titleResId; 
    mLayoutResId = layoutResId; 
} 

public int getTitleResId() { 
    return mTitleResId; 
} 

public int getLayoutResId() { 
    return mLayoutResId; 
} 

}

public class page extends Activity { 


@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.view_white); 

    ViewPager viewPager = (ViewPager) findViewById(R.id.viewpager); 
    viewPager.setAdapter(new CustomPagerAdapter(this)); 




} 

}

public class g reenPage erweitert Aktivität { privater TextView-Text;

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.view_green); 

    ViewPager viewPager = (ViewPager) findViewById(R.id.viewpager); 
    viewPager.setAdapter(new CustomPagerAdapter(this)); 

    text=(TextView)findViewById(R.id.textView2); 

    /*not working ->*/ text.setText("HELLO"); 

} 

}

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
      android:layout_width="match_parent" 
      android:layout_height="match_parent"> 

<android.support.v4.view.ViewPager 
    android:id="@+id/viewpager" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:layout_alignParentTop="true" 
    android:layout_alignParentLeft="true"> 
    <TextView 
     android:id="@+id/textview1" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_centerHorizontal="true" 
     android:textAppearance="?android:attr/textAppearanceMedium" 
     android:textSize="30sp" 
     android:textStyle="normal" 
     /> 



</android.support.v4.view.ViewPager> 

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
      android:orientation="vertical" 
      android:layout_width="match_parent" 
      android:background="@android:color/holo_red_dark" 
      android:layout_height="match_parent"> 

<TextView 
    android:text="TextView" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignParentTop="true" 
    android:layout_centerHorizontal="true" 
    android:layout_marginTop="193dp" 
    android:id="@+id/textView2"/> 

mir bitte helfen. Ich weiß nicht viel. Würdest du bitte beschreibend sein?

Antwort

0

Stellen Sie sicher, die ID von textView2 Sie die Textview-Casting in ist eigentlich in Ihrem activity.xml

versuchen, eine Zeichenfolge mit:

final String HELLO = "HELLO"; 

TextView text = (TextView)findViewById(R.id.textView2); 
text.setText("" + HELLO); 

Alternative, wenn der Text, die derzeit auf textView2 verfügbar ist, ist nicht wichtig, machen Sie es einen Hinweis und dann auf die onCreate ändern Sie den Text

Wenn diese Methode nicht funktioniert versuchen Sie das Projekt neu zu erstellen, kann dies daran liegen, dass Sie die Codes irgendwo kopieren und die neu hinzugefügten Werte nicht bekannt sind das Projekt ct.

Verwandte Themen