gmail应用程序的工具栏看起来类似于操作栏(甚至包括溢出菜单).它是一个蓝色条,大约是屏幕下方的1/4.见图1:
我想要的酒吧用红色箭头指出.我查看了文档,没有看到一个小部件来执行此操作.我怎么能这样做一个吧?
此外,如果您看到下面的橙色箭头,则表明此应用程序顶部和底部都有一个操作栏.我很好奇这是如何完成的,但我的主要问题是如何在屏幕上的任何地方制作类似于动作栏的工具栏.
图1是在电话上.我还包括下面的图像2和图像3,它们分别是7英寸平板电脑和10英寸平板电脑.请注意,"拆分"操作栏位于包含平板电脑视图的单个栏上.


android android-widget android-layout android-xml android-gui
我有一个包含TextView的LinearLayout,并且总是会.TextView下面始终至少有一个按钮,但在某些情况下可能会有多个按钮.
我可以通过编程方式成功创建和添加任意数量的按钮.我还可以通过编程方式成功设置这些按钮所需的任何外观相关参数/选项.
问题是我不知道如何告诉以编程方式创建的按钮它应该使用包含外观和布局参数的XML资源文件,而不是以编程方式设置这些参数.
我看过类似命名的问题并花时间搞乱API本身,但无济于事.
编辑:
这是我正在尝试做的一个近似值,希望能让我的解释更加清晰:
private TextView textView;
private SomeObject someObject;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View scrollView = inflater.inflate(R.layout.fragment_play_game, container, false);
textView = (TextView) scrollView.findViewById(R.id.game_data_text);
textView.setText(someObject.getTextForTextView());
LinearLayout layout = (LinearLayout) scrollView.findViewById(R.id.game_data_container);
for (String optionText : someObject.getTextForButtons()) {
layout.addView(createOptionButton(optionText, layout));
}
return scrollView;
}
private View createOptionButton(String optionText, LinearLayout layout) {
Button optionButton = new Button(this.getActivity());
// set button layout/options here, somehow??
optionButton.setText(optionText);
return optionButton;
}
Run Code Online (Sandbox Code Playgroud)
片段的我的XML布局文件看起来像这样(这是我试图添加按钮的LinearLayout):
<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent" …Run Code Online (Sandbox Code Playgroud) 我在将十字按钮放在textview顶部时遇到了问题.我正在使用LinearLayout并且它没有出现,而在Framelayout它工作,但这不能解决我的目的.我附上我的XML供参考,请帮助我克服这个问题.
<LinearLayout
android:id="@+id/top"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@drawable/phone_toolbar"
android:baselineAligned="true"
android:gravity="center_horizontal"
android:paddingBottom="2dp"
android:paddingTop="2dp" >
<ImageView
android:id="@+id/search_icon"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginLeft="5dp"
android:layout_marginRight="10dp"
android:background="@drawable/toolbar_search_icon_phone" >
</ImageView>
<AutoCompleteTextView
android:id="@+id/text"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginRight="10dp"
android:layout_weight="2"
android:background="@drawable/toolbar_phone_textfield"
android:dropDownVerticalOffset="5dp"
android:ems="10"
android:focusable="true"
android:hint="@string/hint"
android:imeOptions="actionSearch"
android:paddingLeft="10dp"
android:paddingRight="20dp"
android:singleLine="true"
android:textColor="#000000"
android:textSize="14sp" />
<Button
android:id="@+id/clear_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="right|center_vertical"
android:layout_marginRight="10dip"
android:background="@drawable/text_clear" />
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
谢谢!
我有expandablelistview,我想在组项目之间添加填充(或边距),我margin-botton在组项目上使用,它可以工作,但现在它也应用于组项目及其子项目,我想在组项目之间保留一个空格,不是在一个组项目和它的孩子之间,我的工作方式如下:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:background="#FFFFFF">
<TextView android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:typeface="serif"
android:textSize="25dip"
android:textColor="#025f7c"
android:text="@string/tv_allAddresses"
android:layout_gravity="center"
android:layout_marginTop="20dip"
android:layout_marginBottom="25dip"/>
<ExpandableListView
android:id="@+id/elv_all_addresses_addresses"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="10dip">
</ExpandableListView>
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<TextView
android:id="@+id/tv_all_address_group_groupName"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingLeft="30dip"
android:textColor="#000000"
android:textSize="20dip"
android:typeface="serif" />
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal" >
<TextView
android:id="@+id/tv_all_address_child_label"
android:paddingLeft="50dip"
android:typeface="serif"
android:textSize="15dip"
android:textColor="@color/BlueViolet"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<TextView
android:id="@+id/tv_all_address_child_value"
android:textColor="#000000"
android:layout_marginLeft="10dip"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</LinearLayout>
Run Code Online (Sandbox Code Playgroud) 有什么区别
android:color="@android:color/black"
Run Code Online (Sandbox Code Playgroud)
和
style="?android:attr/borderlessButtonStyle"
Run Code Online (Sandbox Code Playgroud)
@和之间有什么区别??
这是ungoogleable或ogooglebar的问题之一.
我想利用scaleType属性,如果我使用背景属性设置我的图像,我就无法使用它LinearLayout.我尝试过使用LinearLayout2个孩子:第一个是ImageView(用于背景图像),第二个孩子是另一个LinearLayout包含TextViews,按钮等.但结果只是其他视图后面的图像.
是否有可能浮在嵌套LinearLayout在ImageView不知何故?我知道这个问题有很多变化,但我还没有发现任何对我有帮助的东西.如果我错过了什么,请指出我的方向.另外,如果可能的话,我想用XML做这件事,而且我可以灵活地使用什么类型的布局(它没有线性).
android android-layout android-xml android-imageview android-background
在我的应用程序中,我有一个PreferenceScreen,如下所示:
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android" >
<CheckBoxPreference
android:key="state"
android:title="@string/stateTitle"
android:summary="@string/stateSummary"
android:defaultValue="false" />
<Preference
android:key="test"
android:layout="@layout/pref_control"
android:dependency="state" />
</PreferenceScreen>
Run Code Online (Sandbox Code Playgroud)
现在我的问题是如何pref_control.xml从PreferenceActivity 获取我的观点?我尝试了正常,findViewById()但结果是NullPointerException.这是导致异常的代码:
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.preferences);
((Button) findViewById(R.id.startTime)).setText("bla");
((Button) findViewById(R.id.endTime)).setText("bla");
}
Run Code Online (Sandbox Code Playgroud) 假设我创建了一个名为的自定义视图,MyView并希望在xml中使用它,视图位于com.example包中.我需要做这样的事情:
<com.example.MyView
......
/>
Run Code Online (Sandbox Code Playgroud)
我每次使用视图时都需要编写包名.如果我的包裹名称很长怎么办?
<what.a.long.long.long.loooooong.packagename.MyView
......
/>
Run Code Online (Sandbox Code Playgroud)
那看起来很难看.是否可以缩短包装名称?我是否需要在AndroidManifest.xml文件中执行某些操作?
我设计了两个Android布局,应该按顺序显示.因此,第一个布局必须显示在页面顶部,第二个布局必须显示在页面底部.但是,以下代码仅显示第一个布局.我怎样才能显示第二个布局?
主要布局是
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
<include layout="@layout/first_layout"/>
<include layout="@layout/second_layout"/>
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
第一个xml布局是
<LinearLayout 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:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin"
tools:context="net.simplifiedcoding.androidloginapp.UserProfile">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceLarge"
android:text="Large Text"
android:id="@+id/textView3"
android:layout_alignParentTop="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true" />
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
第二个布局是
<LinearLayout 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:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:orientation="vertical"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin"
tools:context=".MainActivity">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Name"
android:id="@+id/textView" />
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/editTextName" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Address"
android:id="@+id/textView2" />
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/editTextAddress" />
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Insert"
android:onClick="insert"
android:id="@+id/button" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/textViewResult" …Run Code Online (Sandbox Code Playgroud) 我正在开发一个应用程序,我已经做了以下显示的布局:
有一个CircleImageView和一个CardView.
这是XML代码:
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
app:layout_behavior="@string/appbar_scrolling_view_behavior"
tools:context="com.playrapp.playr.Profile"
tools:showIn="@layout/activity_profile">
<android.support.v7.widget.CardView
android:id="@+id/profileCard"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
app:contentPadding="10dp">
</android.support.v7.widget.CardView>
<de.hdodenhof.circleimageview.CircleImageView
android:id="@+id/userImageProfile"
android:layout_width="150dp"
android:layout_height="150dp"
android:layout_marginTop="50dp"
android:src="@mipmap/ic_launcher"
android:layout_centerHorizontal="true"/>
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)
在这里,cardview在imageview上.我希望imageview能够超越cardview.我怎样才能做到这一点?
请告诉我.
android android-layout android-xml android-imageview android-cardview