2015-03-18 15 views
6

Làm thế nào tôi có thể tạo hình ảnh xem trước hình tròn/hình bầu dục hoặc vòng tròn như thế này (vòng tròn ở giữa nên được xem trước máy ảnh)?Android: Làm thế nào để thực hiện Xem trước Camera hình tròn?

enter image description here

Hình ảnh London đại diện cho phần còn lại của giao diện người dùng với các nút và quan điểm, vì vậy nó phải được hiển thị toàn và đó là lý do tại sao tôi không thể sử dụng các giải pháp thích thêm android:background như một hình chữ nhật hình với bán kính như thế này:

<?xml version="1.0" encoding="UTF-8"?> 
<shape xmlns:android="http://schemas.android.com/apk/res/android"> 
    <solid android:color="#FFFFFF"/> 
    <stroke android:width="3dip" android:color="#B1BCBE" /> 
    <corners android:radius="50dip"/> 
    <padding android:left="0dip" android:top="0dip" android:right="0dip" android:bottom="0dip" /> 
</shape> 

và khi tôi cố gắng thiết lập android:background xml như hình bầu dục với SurfaceView, nó không hoạt động hoặc là:

<?xml version="1.0" encoding="utf-8"?> 
<shape 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:shape="oval"> 

    <size 
     android:width="120dp" 
     android:height="120dp"/> 

    <stroke 
     android:color="#FF000000" 
     android:width="2dp" /> 
</shape> 

Nếu có thể bằng cách nào đó mở rộng SurfaceView và sử dụng nó, tôi nên viết lại cái gì?

Trả lời

0

hmm tôi nghĩ rằng cách dễ nhất là bằng cách đặt dấu IMAGExem trên đầu trang của SurfaceView dụ của bạn bằng cách xml:

<RelativeLayout ....> 
    <SurfaceView ... /> 
    <ImageView ... /> 
</RelativeLayout> 
+0

hình nền (London) đại diện cho giao diện người dùng của tôi, những điều này phải ở chế độ nền. –

+1

Tại sao chúng phải ở chế độ nền? Tại sao bạn không thể tạo một lỗ tròn trong suốt với ImageView đó và để cho bề mặt của SurfaceView hiển thị qua nó? (Hoặc chỉ cần sử dụng vẽ trên ViewView của SurfaceView, mà không có gì ngoài một hình chữ nhật trong suốt.) – fadden

+0

Rất tiếc đề cập đến, hình ảnh có chứa hình ảnh có vòng tròn trong suốt, bạn có thể sử dụng hình ảnh PNG –

Các vấn đề liên quan