Articles of 可见性

安卓可见性问题与checkbox

我在我的代码中使用checkbox,当它的检查使得一个textview和一个editText可见,但是如果我取消selectdecheckbox,他们继续可见,而不是dissapear。 这里是代码: final CheckBox save = (CheckBox) findViewById(R.id.checkbox); save.setOnClickListener(new OnClickListener() { public void onClick(View v) { // Perform action on clicks, depending on whether it's now checked if (((CheckBox) v).isChecked()) { nameText.setVisibility(1); editName.setVisibility(1); } else { nameText.setVisibility(0); editName.setVisibility(0); } } }); 以及相对布局内部的xml的一部分: <LinearLayout android:id="@+id/linearLayout3" android:orientation="horizontal" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_below = "@+id/linearLayout2"> <TextView android:id="@+id/text" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/name" […]

如何在Android中隐藏进度条?

我添加了一个进度条到我的应用程序,但我想隐藏一些做一些行动之后, 我用hide() , dismiss()和cancel() …但他们都没有工作? 我怎样才能隐藏进度栏?

在子视图上调用setVisibility(View.VISIBLE)之后,Android ScrollView将滚动到顶部

里面有一个带有RelativeLayout的ScrollView 。 这个RelativeLayout里面有几个View 。 其中一个View是CheckBox 。 当CheckBox被选中/取消选中时,其他一些View应该相应地出现/消失。出现和消失的工作正常,但是每当目标View出现或消失时, ScrollView View ScrollView到顶部,而我被迫向下滚动,看看发生了什么事。 我用来控制可视性的代码是: public void crossCountryCheckboxClicked(View view) { CheckBox crossCountryCheckBox = (CheckBox)findViewById(R.id.checkbox_cross_country); EditText crossCountryHoursTextBox = (EditText)findViewById(R.id.cross_country_hours); if (crossCountryCheckBox.isChecked()) { crossCountryHoursTextBox.setVisibility(View.VISIBLE); } else { crossCountryHoursTextBox.setVisibility(View.GONE); } } 并通过在XML布局文件的CheckBox元素上指定android:onClick属性来调用crossCountryCheckboxClicked()方法。 这是XML布局文件: <ScrollView xmlns:android="http://schemas.android.com/apk/res/android" xmlns:custom="http://schemas.android.com/apk/res/logbook.app.activities" xmlns:tools="http://schemas.android.com/tools" android:layout_width="fill_parent" android:layout_height="fill_parent" > <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="wrap_content" > <TextView android:id="@+id/flight_date" android:layout_width="fill_parent" android:layout_height="wrap_content" /> <EditText android:id="@+id/aeroplane_type" […]

Android – 调用GONE然后VISIBLE使视图显示在错误的地方

我有两个视图A和B,而视图A位于视图B之上(都是线性布局)。 当我以编程的方式将视图A设置为GONE时,视图A消失,视图A正下方的视图(B)会移到视图A的位置(如预期的那样)。 但是,当我把相同的视图(A)再次设置为可见时,它被显示在视图B之上。我不想这样做。 我想让视图B回到原来的位置(在视图A下面),这是我认为会发生的事情(但事实并非如此)。 我怎样才能做到这一点? 先谢谢你! 编辑 – 代码 package com.test; import android.app.Activity; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.view.animation.ScaleAnimation; import android.view.animation.Transformation; import android.widget.LinearLayout.LayoutParams; public class ViewGoneEffectActivity extends Activity implements OnClickListener { private View viewComEfeito = null; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); findViewById(R.id.outroLinear).setOnClickListener(this); findViewById(R.id.segundo).setOnClickListener(this); viewComEfeito = findViewById(R.id.outroLinear); } @Override public void […]

setvisibility(view.visible)不能在setvisibility(view.gone)之后工作

我看到一些关于这个的post,我理解这个问题。 但是怎么能绕过呢? 我有ListView项目,可以扩大,但一旦视图消失,它不能再次可见,除非它有一个可用空间。 如何使这个空间? private void mySetOnItemListener() { l.setOnItemClickListener(new OnItemClickListener() { @Override public void onItemClick(AdapterView<?> arg0, View view, int position, long arg3) { Log.d("onItemClick","called"); LinearLayout ll = (LinearLayout)view.findViewById(R.id.llOpenedField); ll.setVisibility(View.VISIBLE); } }); } 我的viewLayout <?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="wrap_content" android:orientation="vertical" android:descendantFocusability="blocksDescendants"> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="50dp" android:orientation="horizontal" android:weightSum="5" > <TextView android:id="@+id/tv_name" android:layout_width="0px" android:layout_height="wrap_content" android:layout_gravity="center" android:layout_weight="4" […]

如果最初设置为不可见,则android setVisibility不会显示

我有一个占据全屏的表面。 点击一个button,我想另一个布局出现(设置types的东西)。 如果我首先看到覆盖层,那么我可以将其隐藏起来,然后再次看到没有任何问题。 但是如果我从无形开始的话,我再也看不到它了。 代码如下: <?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" > <android.opengl.GLSurfaceView android:id="@+id/glPlaySurface" android:layout_width="match_parent" android:layout_height="match_parent" > </android.opengl.GLSurfaceView> <RadioGroup android:id="@+id/radioGroup1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:layout_alignParentLeft="true" android:orientation="horizontal" > <RadioButton android:id="@+id/btnRotate" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="10dp" android:checked="true" android:text="R" android:textColor="#000" /> <RadioButton android:id="@+id/btnPan" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="15dp" android:text="P" android:textColor="#000" /> </RadioGroup> <Button android:id="@+id/btnLights" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:layout_marginLeft="15dp" android:layout_toRightOf="@+id/radioGroup1" android:text="Lights" /> <RelativeLayout […]

检查窗口中是否显示视图的最佳方法是什么?

检查窗口中是否显示视图的最佳方法是什么? 我有一个CustomView,它是我的SDK的一部分,任何人都可以将CustomView添加到他们的布局。 当我的CustomView定期对用户可见时,会采取一些操作。 所以如果视图对用户是不可见的,那么它需要停止定时器,当它再次变为可见时,它应该重新开始它的过程。 但不幸的是,没有一定的方法来检查我的CustomView对用户是否可见或不可见。 有几件事我可以检查和听取: onVisibilityChange //it is for view's visibility change, and is introduced in new API 8 version so has backward compatibility issue onWindowVisibilityChange //but my CustomView can be part of a ViewFlipper's Views so it can pose issues onDetachedFromWindows //this not as useful onWindowFocusChanged //Again my CustomView can be part of […]

如何以编程方式更改布局的可见性

有方法来改变视图的可见性,但我怎样才能以编程方式更改在XML中定义的布局的可见性? 如何获得布局对象? <LinearLayout android:id="@+id/contacts_type" android:orientation="horizontal" android:layout_width="fill_parent" android:layout_height="wrap_content" android:visibility="gone"> </LinearLayout>

以编程方式设置谷歌地图片段可见性(API2)

XML: <fragment xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/mapFragment" android:layout_width="match_parent" android:layout_height="match_parent" class="com.google.android.gms.maps.SupportMapFragment"/> 在正常的片段中是这样的: mFragment = (mFragment) (getSupportFragmentManager().findFragmentById(R.id.mFragment)); mFragment.getView().setVisibility(View.INVISIBLE); 在Google地图片段中: mMap = ((SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.mapFragment)).getMap(); 但是,我怎样才能设置地图片段的可见性? 不能像别人那样做片段。

android View与View.GONE仍然接收onTouch和onClick

这让我很困惑: 据我所读,一个视图与setVisibility(View.GONE); 不应再收到任何触摸或点击事件。 我的布局有两个部分,这将是可见或消失,使其中只有一个是可见和可用的一次,但View.GONE不会做的伎俩。 按预期,我看不到GONE视图,但它仍然对onClick(并消耗另一个视图应该得到的事件)作出反应。 你可以帮我吗? 也许感兴趣:当我开始我的项目时,一个视图是GONE,另一个视图是可见的。 这一次它会按预期工作(GONE视图基本上被忽略),但通过代码设置View.GONE后,它将停止工作。