課程
/移動開發
/Android
/Android UI模板設計
我想動態的設置標題文字,在TopBar中寫個title.setText()方法,然后在Activity中調用用來動態設置文字,發現不管用,請問該如何做呢?
2016-03-04
源自:Android UI模板設計 1-3
正在回答
public void setTitleText(String titleText){ ? ?tvTitle.setText(titleText);}
TopBar方法里寫上這個方法 ?然后在MainActivity 調用topBar.setTitleText("我是第一個界面");就改變了
<?xml?version="1.0"?encoding="utf-8"?> <LinearLayout?xmlns:android="http://schemas.android.com/apk/res/android" ????xmlns:xiaoling="http://schemas.android.com/apk/res-auto" ????android:orientation="vertical" ????android:layout_width="match_parent" ????android:layout_height="match_parent"> ????<com.custom.mycustomview.custom.View1 ????????android:id="@+id/view1" ????????android:layout_width="match_parent" ????????android:layout_height="50dp" ????????xiaoling:barTitle="標題欄" ????????android:paddingLeft="10dp" ????????android:paddingRight="10dp" ????????xiaoling:leftImage="@mipmap/ic_nav_back_p" ????????xiaoling:rightImage="@mipmap/ic_map_location" ????????xiaoling:barTitleTextSize="@dimen/d18" ????????xiaoling:barTitleTextColor="@color/black" ????????/> </LinearLayout>
上述xml文件名叫:include_topbar.xml
接下來我在要用的布局(假設名字叫activity_main)中引用這個xml:
<include?layout="@layout/include_topbar"/>
在引用activity_main布局的activity中只要聲明:
private View1 view1;
view1 = (View1) findViewById(R.id.view1);
你之前不是在自定義view中添加了設置標題的方法了嗎,這時候只要用view1.setTitle(假設setTitle是你寫的方法名)就可以設置具體想要的控件啦~
不想這么include,那就直接復制粘貼<com.custom.mycustomview.custom.View1這個控件及其相關設置
需要在每個Fragment的布局文件中都添加進這個自定義控件,然后在每個Fragmen里單獨findViewById、設置值
你寫的這個方法不在布局中調用,而是在Acitivity中調用:topBar.setTitleText("標題文字");
布局中如果要另起標題應該是:custom:title=“標題文字”;
NewOrin 提問者
舉報
快來學習如何在Android中自定義View,本次課程一定會讓你獲益匪淺
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2017-05-22
public void setTitleText(String titleText){
? ?tvTitle.setText(titleText);
}
TopBar方法里寫上這個方法 ?然后在MainActivity 調用topBar.setTitleText("我是第一個界面");就改變了
2016-03-08
上述xml文件名叫:include_topbar.xml
接下來我在要用的布局(假設名字叫activity_main)中引用這個xml:
在引用activity_main布局的activity中只要聲明:
private View1 view1;
view1 = (View1) findViewById(R.id.view1);
你之前不是在自定義view中添加了設置標題的方法了嗎,這時候只要用view1.setTitle(假設setTitle是你寫的方法名)就可以設置具體想要的控件啦~
不想這么include,那就直接復制粘貼<com.custom.mycustomview.custom.View1這個控件及其相關設置
2016-03-08
需要在每個Fragment的布局文件中都添加進這個自定義控件,然后在每個Fragmen里單獨findViewById、設置值
2016-03-04
你寫的這個方法不在布局中調用,而是在Acitivity中調用:topBar.setTitleText("標題文字");
布局中如果要另起標題應該是:custom:title=“標題文字”;