我在网上找不到任何关于如何将方法放入TextView的示例,以便在打开应用程序时在片段中显示。我想我记得它就像是
+ "text" + getDeviceName() + "more text"
fragment_home.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/txtLabel"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="16dp"
android:text="@string/overview_one"/>
</RelativeLayout>
HomeFragment.java
package info.androidhive.slidingmenu;
import android.app.Fragment;
import android.os.Build;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
public class HomeFragment extends Fragment {
public HomeFragment(){}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.fragment_home, container, false);
return rootView;
}
public String getDeviceName() {
String manufacturer = Build.MANUFACTURER;
String model = Build.MODEL;
if (model.startsWith(manufacturer)) {
return capitalize(model);
} else {
return capitalize(manufacturer) + " " + model;
}
}
private String capitalize(String s) {
if (s == null || s.length() == 0) {
return "";
}
char first = s.charAt(0);
if (Character.isUpperCase(first)) {
return s;
} else {
return Character.toUpperCase(first) + s.substring(1);
}
}
}
答案 0 :(得分:0)
我不清楚你在问什么。所以这里...... 应用程序打开时会发生Activity.OnCreate方法。但是,您可以通过示例代码将文本设置为TextView:
TextView itemText = (TextView) rootView.findViewById(R.id.txtLabel);
itemText.setText("text " + getDeviceName());
如果要在代码中隐藏视图而不是xml,请执行以下操作:
itemText.setVisibility(false);
您可以将代码放入片段类中的onCreateView方法,除非您想要创建一个新的(公共)方法。 我希望这接近你所要求的。
答案 1 :(得分:0)
//I am not sure you want exactly, but
//Write Down a Code onCreateView
TextView tv = (TextView) rootView.findViewById(R.id.tv);
//Call method write now
String s = getDeviceName();
tv.setText(s);