我们可以在一个活动中使用图像滑块视图和图标吗?

时间:2016-03-15 06:36:37

标签: android

我正在尝试为看起来像这个图像的活动编写代码。在我的屏幕上,我想要一个图像滑块视图以及滑块视图下方的一些图标,如图所示。我该怎么做?

Image

2 个答案:

答案 0 :(得分:0)

这就是我作为一个应用程序的教程所做的:我已经将图像加载到中心,我不是用指针更改它们,而是使用' Go'和'返回' RelativeLayout内的按钮用于移动图像,但您可以根据需要进行切换。我有一个居中的按钮,其中包含'完成'以及底部带有一个标题的标签。 正如您所看到的那样,这是一个没有预览或图标的示例,但也许这是您可以自己创建的代码。

tutorial.xml

<RelativeLayout 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"
tools:context=".Notificacion" >

<ImageView
    android:id="@+id/imageView1"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_above="@+id/button3"
    android:layout_below="@+id/RelativeLayout1"
    android:layout_marginTop="4dp"
    android:src="@drawable/guia1" />

<TextView
    android:id="@+id/textView1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:layout_centerHorizontal="true"
    android:layout_marginBottom="8dp"
    android:layout_marginTop="8dp"
    android:text="@string/img1"
    android:textColor="#000000"
    android:textSize="15sp" />

<RelativeLayout
    android:id="@+id/RelativeLayout1"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_alignParentTop="true"
    android:orientation="horizontal" >

    <Button
        android:id="@+id/button_back"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentTop="true"
        android:background="@android:color/transparent"
        android:paddingLeft="6dp"
        android:text="@string/back"
        android:textColor="#088A08"
        android:textSize="15sp" />

    <Button
        android:id="@+id/button_next"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentRight="true"
        android:layout_alignParentTop="true"
        android:background="@android:color/transparent"
        android:paddingRight="8dp"
        android:text="@string/next"
        android:textColor="#088A08"
        android:textSize="15sp" />

</RelativeLayout>

    <Button
        android:id="@+id/button3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_above="@+id/textView1"
        android:layout_centerHorizontal="true"
        android:background="@android:color/transparent"
        android:onClick="back"
        android:text="@string/fin"
        android:textColor="#088A08"
        android:textSize="12sp" />
</RelativeLayout>

我的类名为Tutorial.java,它实现了OnClickListener。在这里,我从drawable文件夹中加载了几个图像,并为每个文件加载了一个文本。

import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.TextView;

public class Tutorial extends Activity implements OnClickListener{

ImageView foto;
TextView tv;
int[] fotoId = {R.drawable.yourimage01, R.drawable.yourimage02, R.drawable.yourimage03, R.drawable.yourimage04, R.drawable.yourimage05, R.drawable.yourimage06, R.drawable.yourimage07}; 
String[] textos = {"Text for image 01", "Text for image 02", "Text for image 03", "Text for image 04", "Text for image 05", "Text for image 06", "Text for image 07",};
int i = 0;
int total;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.tutorial);

    Button next= (Button) findViewById(R.id.button_next);
    Button back= (Button) findViewById(R.id.button_back);
    next.setOnClickListener(this);
    back.setOnClickListener(this);

    tv = (TextView) findViewById(R.id.textView1);
    foto = (ImageView) findViewById(R.id.imageView1);
    total = fotoId.length;
}

@Override
public void onClick(View view) {

    int id = view.getId();
    if(id == R.id.button_back) {
        i++;
        if(i == total){
            i = 0;
        }
    }

    if(id == R.id.button_next) {
        i--;
        if(i == -1){
            i = total -1;
        }
    }
    foto.setImageResource(fotoId[i]);
    tv.setText(textos[i]);

}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.main, menu);
    return true;
}

public void back(View view) {
    Intent i = new Intent(this, Indice.class );
    startActivity(i);
  }
}

希望它有所帮助。

答案 1 :(得分:0)

我建议您使用this库。只需添加其依赖关系并将其设置为游览活动的顶部,然后使用图标填充其余部分或覆盖您想要的其他内容。