所以这是我的xml代码:
<ScrollView
android:layout_width="match_parent"
android:layout_height="wrap_content"
>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:orientation="horizontal"
android:layout_weight="1">
<ImageView
android:layout_width="0dp"
android:layout_height="200dp"
android:layout_weight="1"
android:background="@drawable/profilbildfrau"
android:id="@+id/bild0"/>
<ImageView
android:layout_width="0dp"
android:layout_height="200dp"
android:layout_weight="1"
android:background="@drawable/profilbildfrau"
android:id="@+id/bild1"/>
<ImageView
android:layout_width="0dp"
android:layout_height="200dp"
android:layout_weight="1"
android:background="@drawable/profilbildfrau"
android:id="@+id/bild2"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:orientation="horizontal"
android:layout_weight="1">
<ImageView
android:layout_width="0dp"
android:layout_height="200dp"
android:layout_weight="1"
android:background="@drawable/profilbildfrau"
android:id="@+id/bild3"/>
<ImageView
android:layout_width="0dp"
android:layout_height="200dp"
android:layout_weight="1"
android:background="@drawable/profilbildfrau"
android:id="@+id/bild4"/>
<ImageView
android:layout_width="0dp"
android:layout_height="200dp"
android:layout_weight="1"
android:background="@drawable/profilbildfrau"
android:id="@+id/bild5"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:orientation="horizontal"
android:layout_weight="1">
<ImageView
android:layout_width="0dp"
android:layout_height="200dp"
android:layout_weight="1"
android:background="@drawable/profilbildfrau"
android:id="@+id/bild6"/>
<ImageView
android:layout_width="0dp"
android:layout_height="200dp"
android:layout_weight="1"
android:background="@drawable/profilbildfrau"
android:id="@+id/bild7"/>
<ImageView
android:layout_width="0dp"
android:layout_height="200dp"
android:layout_weight="1"
android:background="@drawable/profilbildfrau"
android:id="@+id/bild8"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:orientation="horizontal"
android:layout_weight="1">
<ImageView
android:layout_width="0dp"
android:layout_height="200dp"
android:layout_weight="1"
android:background="@drawable/profilbildfrau"
android:id="@+id/bild9"/>
<ImageView
android:layout_width="0dp"
android:layout_height="200dp"
android:layout_weight="1"
android:background="@drawable/profilbildfrau"
android:id="@+id/bild10"/>
<ImageView
android:layout_width="0dp"
android:layout_height="200dp"
android:layout_weight="1"
android:background="@drawable/profilbildfrau"
android:id="@+id/bild11"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:orientation="horizontal"
android:layout_weight="1">
<ImageView
android:layout_width="0dp"
android:layout_height="200dp"
android:layout_weight="1"
android:background="@drawable/profilbildfrau"
android:id="@+id/bild12"/>
<ImageView
android:layout_width="0dp"
android:layout_height="200dp"
android:layout_weight="1"
android:background="@drawable/profilbildfrau"
android:id="@+id/bild13"/>
<ImageView
android:layout_width="0dp"
android:layout_height="200dp"
android:layout_weight="1"
android:background="@drawable/profilbildfrau"
android:id="@+id/bild14"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:orientation="horizontal"
android:layout_weight="1">
<ImageView
android:layout_width="0dp"
android:layout_height="200dp"
android:layout_weight="1"
android:background="@drawable/profilbildfrau"
android:id="@+id/bild15"/>
<ImageView
android:layout_width="0dp"
android:layout_height="200dp"
android:layout_weight="1"
android:background="@drawable/profilbildfrau"
android:id="@+id/bild16"/>
<ImageView
android:layout_width="0dp"
android:layout_height="200dp"
android:layout_weight="1"
android:background="@drawable/profilbildfrau"
android:id="@+id/bild17"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:orientation="horizontal"
android:layout_weight="1">
<ImageView
android:layout_width="0dp"
android:layout_height="200dp"
android:layout_weight="1"
android:background="@drawable/profilbildfrau"
android:id="@+id/bild18"/>
<ImageView
android:layout_width="0dp"
android:layout_height="200dp"
android:layout_weight="1"
android:background="@drawable/profilbildfrau"
android:id="@+id/bild19"/>
<ImageView
android:layout_width="0dp"
android:layout_height="200dp"
android:layout_weight="1"
android:background="@drawable/profilbildfrau"
android:id="@+id/bild20"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:orientation="horizontal"
android:layout_weight="1">
<ImageView
android:layout_width="0dp"
android:layout_height="200dp"
android:layout_weight="1"
android:background="@android:color/black"
android:id="@+id/bild21"
android:visibility="gone"/>
<ImageView
android:layout_width="0dp"
android:layout_height="200dp"
android:layout_weight="1"
android:background="@android:color/black"
android:id="@+id/bild22"
android:visibility="gone"/>
<ImageView
android:layout_width="0dp"
android:layout_height="200dp"
android:layout_weight="1"
android:background="@android:color/black"
android:id="@+id/bild23"
android:visibility="gone">
</ImageView>
</LinearLayout>
</LinearLayout>
</ScrollView>
这些imageViews位于我的java文件中的数组中:
profilbilder[0] = (ImageView)findViewById(R.id.bild0);
profilbilder[1] = (ImageView)findViewById(R.id.bild1);
profilbilder[2] = (ImageView)findViewById(R.id.bild2);
profilbilder[3] = (ImageView)findViewById(R.id.bild3);
profilbilder[4] = (ImageView)findViewById(R.id.bild4);
profilbilder[5] = (ImageView)findViewById(R.id.bild5);
profilbilder[6] = (ImageView)findViewById(R.id.bild6);
profilbilder[7] = (ImageView)findViewById(R.id.bild7);
profilbilder[8] = (ImageView)findViewById(R.id.bild8);
profilbilder[9] = (ImageView)findViewById(R.id.bild9);
profilbilder[10] = (ImageView)findViewById(R.id.bild10);
profilbilder[11] = (ImageView)findViewById(R.id.bild11);
profilbilder[12] = (ImageView)findViewById(R.id.bild12);
profilbilder[13] = (ImageView)findViewById(R.id.bild13);
profilbilder[14] = (ImageView)findViewById(R.id.bild14);
profilbilder[15] = (ImageView)findViewById(R.id.bild15);
profilbilder[16] = (ImageView)findViewById(R.id.bild16);
profilbilder[17] = (ImageView)findViewById(R.id.bild17);
profilbilder[18] = (ImageView)findViewById(R.id.bild18);
profilbilder[19] = (ImageView)findViewById(R.id.bild19);
profilbilder[20] = (ImageView)findViewById(R.id.bild20);
profilbilder[21] = (ImageView)findViewById(R.id.bild21);
profilbilder[22] = (ImageView)findViewById(R.id.bild22);
profilbilder[23] = (ImageView)findViewById(R.id.bild23);
最后三张图片是可见度:已消失。当我点击其他一张图片时,我希望被点击的图片消失,并且三张“消失”图片中的一张应该取而代之。
for(int i = 0; i <= 20; i++){
profilbilder[i].setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View view){
setVisible(false);
profilbilder[profilZähler].setVisibility(View.VISIBLE);
profilZähler++;
Intent profilIntent = new Intent(Hauptmenue.this, Profil.class);
startActivity(profilIntent);
}
});
}
这就是我试图实现它的方式,但那不起作用。任何人对我如何达到目标都有任何建议吗?
谢谢你, 儒略
答案 0 :(得分:1)
profilZähler是什么? 也可以使用它代替setVisible(false); profilbilder [I] .setVisibility(View.GONE);
您正在OnClickListener上启动一个新活动,当您回归时,您的视图将是相同的,因此您需要刷新视图。 此外,您还没有编写使后三张图像可见的功能。
根据我对您的布局的理解,您在水平布局中有3个图像,并且有大约8个这样的布局。
如果要在点击时隐藏图像,请将其替换为最后三张图像。是在视图中还是在数组中?
如果它在视图中,只需将bild3中的图像替换为bild21中的图像。
如果在数组中用逻辑替换元素。 int i = 0,int j = 5,int temp = 0; temp = j; j = i;,i = temp;
你可以更具体地了解你的错误是什么以及想要实现什么......? 感谢。
另一种解决方案。 在考虑之后。
如何执行此操作为每张图片创建一张卡片(布局)。
让您的布局有8个空线性布局。
将每个图片从代码中扩展到布局中。并从代码本身添加功能。
实施例
<LinearLayout
id=+/layout1
.....?
/&GT; 然后你为你的形象创建一张卡
<Layout......>
<ImageView .... ></layout..>
使用
//chk out the syntax.
View view = LayoutInflator.inflate(card,parent..... )
layout1.add(view);
像这里https://github.com/iamShekharGH/RealmAndroidExample/blob/master/MyApplication/app/src/main/java/com/iamshekhargh/realmexample/Fragments/FragmentAddDetails.java 这样的东西
第157行。
答案 1 :(得分:0)
您的ImageView无法点击。请添加bool operator<(const MyStruct& m) const {
if(sadness != m.sadness) return sadness < m.sadness;
if(effort != m.effort) return effort > m.effort;
return happiness > m.happiness;
}
,然后重试。或者您可以使用ImageButton而不是ImageView。希望对你有帮助!