Définir dynamiquement du texte dans un TextView à l'intérieur d'un schéma Android
J'ai cette disposition, ne contenant qu'un seul TextView
, mais je voudrais être en mesure de modifier son contenu (le texte de visualiser de façon très dynamique, à l'aide de code java.
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TextView
android:id="@+id/list_header"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="center_vertical"
android:layout_alignParentTop="true"
android:layout_alignParentBottom="true"
android:textStyle="bold"
android:textSize="22dp"
android:textColor="#FFFFFF"
android:padding="10dp"
android:background="#336699"
/>
</LinearLayout>
Comme vous pouvez le voir je n'ai pas défini le android:text="blablabla"
cause, il n'est pas fixé au point du code dans lequel je l'utilise.
Je voudrais une méthode telle que:
TextView headerValue = (TextView) findViewById(R.id.list_header);
headerValue.setText( "blablabla" );
mais cela ne marchera pas, parce que je utiliser cette mise en page pour définir le style d'un en-tête de la liste, et ces lignes de conflit avec le suivant, je besoin pour utiliser:
View header = (View)getLayoutInflater().inflate(R.layout.list_header_layout, null);
listView.addHeaderView(header);
Pouvez-vous svp m'aider à résoudre ce problème?
LOGCAT:
E/AndroidRuntime( 1468): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1956)
E/AndroidRuntime( 1468): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1981)
E/AndroidRuntime( 1468): at android.app.ActivityThread.access$600(ActivityThread.java:123)
E/AndroidRuntime( 1468): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1147)
E/AndroidRuntime( 1468): at android.os.Handler.dispatchMessage(Handler.java:99)
E/AndroidRuntime( 1468): at android.os.Looper.loop(Looper.java:137)
E/AndroidRuntime( 1468): at android.app.ActivityThread.main(ActivityThread.java:4424)
E/AndroidRuntime( 1468): at java.lang.reflect.Method.invokeNative(Native Method)
E/AndroidRuntime( 1468): at java.lang.reflect.Method.invoke(Method.java:511)
E/AndroidRuntime( 1468): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
E/AndroidRuntime( 1468): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
E/AndroidRuntime( 1468): at dalvik.system.NativeStart.main(Native Method)
E/AndroidRuntime( 1468): Caused by: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.DVA_HLUI/com.DVA_HLUI.DVA_HLUISuperviseActivity}: java.lang.NullPointerException
E/AndroidRuntime( 1468): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1956)
E/AndroidRuntime( 1468): at android.app.ActivityThread.startActivityNow(ActivityThread.java:1797)
E/AndroidRuntime( 1468): at android.app.LocalActivityManager.moveToState(LocalActivityManager.java:135)
E/AndroidRuntime( 1468): at android.app.LocalActivityManager.startActivity(LocalActivityManager.java:347)
E/AndroidRuntime( 1468): at android.widget.TabHost$IntentContentStrategy.getContentView(TabHost.java:682)
E/AndroidRuntime( 1468): at android.widget.TabHost.setCurrentTab(TabHost.java:346)
E/AndroidRuntime( 1468): at android.widget.TabHost.addTab(TabHost.java:236)
E/AndroidRuntime( 1468): at com.DVA_HLUI.DVA_HLUIActivity.onCreate(DVA_HLUIActivity.java:41)
E/AndroidRuntime( 1468): at android.app.Activity.performCreate(Activity.java:4465)
E/AndroidRuntime( 1468): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1049)
E/AndroidRuntime( 1468): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1920)
E/AndroidRuntime( 1468): ... 11 more
E/AndroidRuntime( 1468): Caused by: java.lang.NullPointerException
E/AndroidRuntime( 1468): at com.DVA_HLUI.DVA_HLUISuperviseActivity.onCreate(DVA_HLUISuperviseActivity.java:41)
E/AndroidRuntime( 1468): at android.app.Activity.performCreate(Activity.java:4465)
E/AndroidRuntime( 1468): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1049)
E/AndroidRuntime( 1468): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1920)
E/AndroidRuntime( 1468): ... 21 more
Classe D'Activité:
public class MyActivity extends ListActivity
{
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.list_activity);
ListView listView = (ListView) findViewById(android.R.id.list);
listEntryClass listEntries[] = new listEntryClass[]
{
new listEntryClass( "bla", "bla"),
new listEntryClass( "bla", "bla" )
};
listEntryArrayAdapter adapter = new listEntryArrayAdapter(this, R.layout.list_entry_layout, listEntries);
TextView headerValue = (TextView) findViewById(R.id.list_header);
headerValue.setText( this.getString(R.string.headerSupervise) );
View header = (View)getLayoutInflater().inflate(R.layout.list_header_layout, null);
listView.addHeaderView(header);
listView.setAdapter(adapter);
}
OriginalL'auteur Matteo | 2012-07-01
Vous devez vous connecter pour publier un commentaire.
Doit être référencé à partir de l'en-tête de la vue.
Afin de Modifier votre code pour follwing.
Je pense que je l'ai eu: j'ai fait le TextView headerValue à partir du contexte et non pas à partir de la Vue d'en-tête. - Il Correct?
Merci beaucoup pour votre rapidité! ;D
Correct!! Si il résolu votre problème, puis fermez la question.Bon Codage
thks encore de m'avoir aidé!
OriginalL'auteur Vipul Shah
utilisation
au lieu de
OriginalL'auteur ρяσѕρєя K